Anda di halaman 1dari 30

3.

Pemrograman MicroPython

Penyusun:
Dr. Eko Subiyantoro, S.Pd, S.ST, MT
4. PRAKTIKUM 1
5. PEMROGRAMAN TERSTRUKTUR

1.1. Tujuan Praktikum


Peserta pelatihan mampu:
1. Memahami bahasa pemrograman python
2. Melakukan instalasi bahasa pemrograman dan IDE python
3. Melakukan instalasi IDE untuk pemrograman python
4. Menerapkan fungsi input dan output
5. Menerapkan tipe data dan variabel bahasa pemrograman python
6. Menerepkan operator bahasa pemrograman python
7. Menerapkan struktur kontrol percabangan
8. Menerapkan struktur kontrol perulangan
9. Menerapkan fungsi dalam kode program
10. Menerapkan module dalam kode program

1.2. Pendahuluan
Python adalah bahasa pemograman tingkat tinggi yang dapat digunakan secara luas di berbagai
bidang. Python diciptakan pertama kali oleh Guido van Rossum pada tahun 1991. Sintaks dan fungsi
pada Python dipengaruhi oleh beberapa bahasa seperti C, C++, Lisp, Perl dan Java. Oleh karena
itu, kita dapat menemui konsep pemograman prosedural, fungsional dan object-oriented di
Python. Python relatif mudah dipelajari bila dibandingkan dengan C++, Java dan PHP karena
sintaks Python lebih singkat, lebih jelas dan mudah dipahami oleh programmer pemula.
PyPy merupakan implementasi dari bahasa pemrograman Python yang ditulis dengan Python.
Interpreter ditulis dalam RPython (bagian dari Python) seperti dalam Gambar 1.1

Gambar 1. 1 Alur interpreter dan compiler source code python


Konsep sederhana PyPy adalah menggunakan JIT (just-in-time compilation) dalam
mengkompilasi untuk membuat sistem interpreter lebih efisien dan cepat. Jadi pada dasarnya JIT
Bidang Keahlian: Laboratorium: Tanggal:
Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
1 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
memungkinkan untuk mengkompilasi kode sumber menjadi kode mesin asli yang membuatnya
sangat cepat.
Source code .py pertama kali dikompilasi menjadi kode byte sebagai .pyc. Selanjutnya byte code
ini dapat diterjemahkan oleh JIT compiler.
Python banyak digunakan untuk membuat berbagai macam program, seperti: program CLI,
Program GUI (desktop), Aplikasi Mobile, Web, IoT, Game, Program untuk Hacking.

1.2.1 Instalasi Python

Python: Interpreter yang menerjemahkan bahasa python ke bahasa mesin, sehingga program bisa
dijalankan pada operating sistem Linux, tidak perlu diinstal. Karena Sebagian besar distro Linux
sudah menyediakannya secara default. Untuk mengeceknya, silahkan ketik perintah python --
version di terminal.

$ python –version

Instalasi python di Windows dengan mendownload file python.msi, pada alamat situs resminya
yaitu https://www.python.org/downloads/windows/

Setelah download selesai, kita akan mendapatkan file python-3.9.0.msi. File python-3.9.0.msi
adalah file instalator python. File ini akan melakukan instalasi ke sistem windows.

1.2.2 Integrated Development Environment IDE Phyton


PyCharm adalah salah satu IDE open source terbaik untuk bahasa Python.
Jika kamu adalah pengembang individu atau pemula, IDE ini sangat cocok
untukmu. Muncul dalam beberapa opsi lisensi dari open source ke versi
berbayar. Kamu bisa memilih lisensi apa pun sesuai kebutuhan. PyCharm
adalah paket fitur IDE yang mendukung bahasa Python dari setiap aspek.
Muncul dengan fitur seperti penyelesaian kode berkualitas tinggi, debugger canggih, inspeksi
kode, dll. PyCharm juga mendukung pemrograman web dan kode yang ditulis dalam SQL dan
Bidang Keahlian: Laboratorium: Tanggal:
Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
2 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
bahasa terkait database lainnya. PyCharm bahkan memungkinkanmu untuk memperluas
fungsinya menggunakan plugin eksternal.
https://www.jetbrains.com/pycharm/download/
Jupyter adalah IDE open source yang hadir dengan banyak fitur canggih. Ini
sebenarnya aplikasi berbasis web yang mendukung lebih dari 40 bahasa
pemrograman. Jupyter memungkinkanmu untuk menambahkan komponen
HTML dari gambar ke video. jika kamu ingin berkarier di bidang data science,
Jupyter dapat banyak membantu. Kamu bisa melakukan pembersihan data,
transformasi data, simulasi numerik, pemodelan statistik, visualisasi data,
banyak fungsi lainnya dengan Jupyter. Kamu bahkan dapat menggunakan Jupyter IDE untuk
membuat dan berbagi dokumen dengan kode langsung, persamaan, teks, dan visual. Meskipun
instalasinya sedikit rumit, ini memberikan output interaktif dan membuat seluruh pengembangan
lebih lancar. https://jupyter.org/
Thonny adalah IDE baru (lingkungan pengembangan terintegrasi) yang
dibundel dengan versi terbaru dari Raspbian dengan sistem operasi PIXEL.
Menggunakan Thonny, sekarang lebih mudah untuk belajar membuat kode.
Thonny hadir dengan Python 3.6 bawaan, jadi Anda tidak perlu menginstal
apa pun. Buka saja programnya, yang akan Anda temukan di Menu>
Pemrograman. Ini menawarkan banyak fitur canggih yang saat ini tidak tersedia di program
Python 3 (IDLE), yang masih disertakan dengan Raspbian.

1.2.2 Alur Pembuatan Program Python


1. Membuat skrip python dengan teks editor.
2. Skrip python diterjemahkan ke dalam kode biner oleh (intepreter) python, sehingga komputer
dapat mengerti arti perintah tersebut.
3. Komputer mengerjakan perintah tersebut.

Gambar 1. 2 Alur pembuatan kode program python


Bidang Keahlian: Laboratorium: Tanggal:
Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
3 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
1.3. Dasar-Dasar Pemrograman Python
Input adalah masukan yang kita berikan ke program.Program akan memprosesnya dan
menampilkan hasil outputnya. Input, proses, dan output adalah inti dari semua program
komputer.

input(“Teks”)

print(“Teks”, isi_varabel)

Gambar 1.3 Fungsi input dan output Input dari Keyboard


Python sudah menyediakan fungsi input() dan raw_input() untuk mengambil inputan dari
keyboard.
Cara pakainya:

nama_varabel = input("Sebuah Teks")

Artinya, teks yang kita inputkan dari keyboard akan disimpan ke dalam nama_variabel.
# Mengambil input
nama = input("Siapa nama kamu ? ")
umur = input("Berapa umur kamu ? ")
# Menampilkan output
print ("Hello",nama,"umur kamu adalah",umur,"tahun")
Hasilnya:

1.3.1 Tipe Data dan Variabel


Tipe Data
Secara umum, tipe data primitif dalam python dibagi menjadi tiga jenis:
1. Tipe data angka
Tipe data angka dibagi menjadi beberapa jenis lagi:
 int (Integer): bilangan bulat, contoh 32, 22, 12, 10, dsb.
 float: bilangan pecahan, contoh 1.3, 4.2, 22.3, dsb.
harga = 12000 #tipe int
berat = 23.12 #float
jarak = 3e3 #float 3000.0, huruf e artinya eksponen 10
2. Tipe data teks
Tipe data teks dibagi menjadi dua jenis lagi:
 Char: Karakter, contoh 'E'.
 String: Kumpulan karakter, contoh "SMK Bisa Hebat".
Penulisan tipe data teks harus diapit dengan tanda petik. Bisa menggunakan petik tunggal
('...'), ganda ("..."), dan tiga ('''...''' atau """...""").
nama = "Hisyam Herbiyan"
Bidang Keahlian: Laboratorium: Tanggal:
Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
4 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
jenis_kelamin = 'L'
alamat = """
Graha Gardenia,D9. RT/RW 02/14,
Saptorenggo, Malang
"""
agama = 'Islam'
3. Tipe data boolean
Tipe data boolean adalah tipe data yang hanya memiliki dua nilai yaitu True dan False atau 0
dan 1.
Penulisan True dan False, huruf pertamnya harus kapital dan tanpa tanda petik.
nyala = True
nyala = 1 #Nilai 1 tipe int, tapi bisa menjadi bool

Konversi Tipe Data


Meskipun Python telah otomatis mendeteksi tipe data yang tersimpan dalam variabel, tapi ada
kalanya kita perlu melakukan konversi tipe data.
Misalkan, pada contoh berikut ini:
a = 10
b=3
c=a/b

print c #output: 3
Pembagian nilai a dan b menghasilkan 3 (integer). Mengapa demikian?
Karena nilai a dan b bertipe integer, maka hasilnya pun berupa integer.
Bagaimana agar hasilnya ada komanya?
Tentu kita harus merubah tipe variabel a dan b menjadi bilangan pecahan (float) dulu, baru setelah
itu dibagi.
a = 10
b=3
c = float(a) / float(b) #output: 3.3333333333333335
print c
Fungsi float() akan mengubah nilai a menjadi 10.0 dan b menjadi 3.0.
Fungsi-fungsi untuk mengubah tipe data:
 int() untuk mengubah menjadi integer;
 long() untuk mengubah menjadi integer panjang;
 float() untuk mengubah menjadi float;
 bool() untuk mengubah menjadi boolean;
 chr() untuk mengubah menjadi karakter;
 str() untuk mengubah menjadi string.
 bin() untuk mengubah menjadi bilangan Biner.
 hex() untuk mengubah menjadi bilangan Heksadesimal.
 oct() untuk mengubah menjadi bilangan okta.

Variabel
Variabel merupakan tempat menyimpan data, sedangkan tipe data adalah jenis data yang
terseimpan dalam variabel.

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
5 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
Gambar 1.4 Ilustrasi variabel dengan tipe data

Variabel bersifat mutable, artinya nilainya bisa berubah-ubah.


Variabel di python dapat dibuat dengan format:
nama_variabel = <nilai>

Contoh:

variabel_ku = "ini isi variabel"


variabel2 = 20

Kemudian untuk melihat isi variabel, kita dapat menggunakan fungsi print.

print variabel_ku
print variabel2

Aturan Penulisan Variabel


1. Nama variabel boleh diawali menggunakan huruf atau garis bawah (_), contoh: nama, _nama,
namaKu, nama_variabel.
2. Karakter selanjutnya dapat berupa huruf, garis bawah (_) atau angka, contoh: __nama, n2,
nilai1.
3. Karakter pada nama variabel bersifat sensitif (case-sensitif). Artinya huruf besar dan kecil
dibedakan. Misalnya, variabel_Ku dan variabel_ku, keduanya adalah variabel yang berbeda.
4. Nama variabel tidak boleh menggunakan kata kunci yang sudah ada dalam python seperti if,
while, for, dsb.

1.3.2 Operator
Operator merupakan simbol-simbol yang digunakan untuk melakukan operasi tertentu.
Ada enam jenis operator dalam pemrograman yang wajib diketahui:
1. Operator Aritmatika
2. Operator Pembanding/Relasi
3. Operator Penugasan
4. Opeartor Logika
5. Operator Bitwise
6. Operator Ternary

1. Operator Aritmatika
Opeartor aritmatika terdiri dari:

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
6 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
Tabel 1. 1 Operator Aritmatika
Operator Simbol
Penjumlahan +
Pengurangan -
Perkalian *
Pembagian /
Sisa Bagi %
Pemangkatan **
Contoh:
a = int(input("Inputkan nilai a: "))
b = int(input("Inputkan nilai b: "))

# Menggunakan operator penjumlahan


c=a+b
print ("Hasil ", a, "+" , b,"=", c )

2. Operator Relasi
Operator ini digunakan untuk membandingkan dua buah nilai. Operator ini juga dikenal
dengan operator relasi dan sering digunakan untuk membuat sebuah logika atau
kondisi.
Tabel 1. 2 Operator Relasi
Operator Simbol
Lebih Besar >
Lebih Kecil <
Sama Dengan ==
Tidak Sama dengan !=
Lebih Besar Sama dengan >=
Lebih Kecil Sama dengan <=

Contoh:
a=9
b=5
c=a<b
Apakah isi dari variabel c?
Isinya adalah False, karena nilai 9 lebih kecil dari 5 (9 < 5) adalah salah (False).

3. Operator Logika
Operator logika digunakan untuk membuat operasi logika, seperti logika AND, OR, dan
NOT.Operator logika terdiri dari:

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
7 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
Tabel 1. 3 Operator Logika
Operator Simbol
Logika AND and
Logika OR or
Negasi/kebalikan not

Contoh:
a = True
b = False

# Logika AND
c = a and b
print (a, "and", b, "adalah", c)

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
8 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
1.4. Struktur Kontrol
Pengambilan keputusan merupakan antisipasi terhadap kondisi yang terjadi saat pelaksanaan
program dan menentukan tindakan yang diambil sesuai dengan kondisi tersebut. Struktur
keputusan mengevaluasi beberapa ekspresi yang menghasilkan true atau false sebagai hasil.
Anda perlu menentukan tindakan mana yang harus diambil dan pernyataan mana yang akan
dieksekusi jika hasilnya true atau false sebaliknya. Berikut ini adalah bentuk umum dari struktur
pengambilan keputusan yang ditemukan di sebagian besar bahasa pemrograman.

Tabel 1. 4 Perintah-Perintah Python if


No Perintah Diskripsi
1 if Pernyataan if terdiri dari ekspresi boolean yang diikuti oleh satu atau
beberapa pernyataan.
2 if … else Pernyataan if dapat diikuti oleh pernyataan lain opsional, yang
dieksekusi ketika ekspresi boolean adalah FALSE.
3 If … else if… Pernyataan untuk multi kondisi, if dapat diikuti oleh pernyataan if yang
else lain, yang dieksekusi ketika ekspresi boolean adalah FALSE.

Sintak Perintah Python if

if test expression:
statement(s)

Program mengevaluasi ekspresi test dan akan mengeksekusi pernyataan hanya jika ekspresi
test adalah True. Dalam Python, isi pernyataan if ditunjukkan oleh indentasi. Isi perintah if dimulai
dengan indentasi baris pertama dan yang tidak diberi indentasi menandai akhir. Flowchart
perintah if…else ditunjukkan dalam Gambar 1.5

Gambar 1.5 Flowchart perintah if


Contoh
num = 3
if num > 0:
print(num, "adalah angka positif.")
print("Ini selalu dicetak.")

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
9 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
num = -1
if num > 0:
print(num, " adalah angka negatif.")
print("Ini juga selalu dicetak.")

Saat Anda menjalankan program, hasilnya adalah:

Analisa Program
Dalam contoh di atas, num> 0 adalah ekspresi uji. Isi if dijalankan hanya jika bernilai True. Ketika
variabel num sama dengan 3, ekspresi uji adalah True dan pernyataan di dalam tubuh if
dijalankan. Jika variabel num sama dengan -1, ekspresi uji salah dan pernyataan di dalam tubuh
if dilewati. Pernyataan print () berada di luar blok if (tidak diberi jarak). Karenanya, ini dijalankan
terlepas dari ekspresi pengujian.

Sintak Perintah Python if…else

if test expression:
Body of if
else:
Body of else

Pernyataan if..else mengevaluasi ekspresi pengujian dan akan mengeksekusi isi if hanya jika
kondisi pengujian adalah True. Jika kondisinya False, maka tubuh dari else dieksekusi. Indentasi
digunakan untuk memisahkan blok. Flowchart perintah if…else ditunjukkan dalam Gambar 1.6

Gambar 1.6 Flowchart perintah if…else

Contoh
num = -1
if num >= 0:
print("Positive or Zero")

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
10 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
else:
print("Negative number")
Hasilnya:

Analisa Program
Dalam contoh di atas, ketika num sama dengan 7, ekspresi uji adalah True dan isi if dijalankan
dan isi else dilewati. Jika num sama dengan -5, ekspresi tesnya False maka isi if dilewati dan isi
else dijalankan.

Sintak Perintah Python if…elif… else

if test expression:
Body of if
elif test expression:
Body of elif
else:
Body of else

Elif adalah kependekan dari else if. Ini memungkinkan kita untuk memeriksa beberapa ekspresi.
Jika kondisi jika False, ia memeriksa kondisi blok elif berikutnya dan seterusnya. Jika semua
kondisinya False, body dari else dieksekusi. Hanya satu blok di antara beberapa blok if ... elif ...
else dijalankan sesuai dengan kondisi. Blok if hanya dapat memiliki satu blok lagi. Tapi itu bisa
memiliki beberapa blok elif. Flowchart perintah if…else ditunjukkan dalam Gambar 1.7

Gambar 1.7 Flowchart perintah if…elif…else

Contoh
num = 3.4

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
11 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
if num > 0:
print("Positive number")
elif num == 0:
print("Zero")
else:
print("Negative number")
Hasilnya:

Analisa Program
Ketika variabel num bernilai positif, maka Positive number dicetak. Jika num bernilai 0, maka
Zero dicetak. Jika num bernilai negatif, maka Negative number dicetak.

Perintah Python nested if

Kita dapat memiliki pernyataan if ... elif ... else di dalam pernyataan if ... elif ... else. Ini disebut
nested dalam pemrograman komputer.
Sejumlah pernyataan ini bisa bertumpuk di dalam satu sama lain. Indentasi adalah satu-satunya
cara untuk mengetahui tingkat bersarang. Mereka bisa membingungkan, jadi harus dihindari
kecuali jika perlu.
Contoh:
num = int(input("Enter a number: "))
if num >= 0:
if num == 0:
print("Zero")
else:
print("Positive number")
else:
print("Negative number")

Output 1:
Enter a number: 5
Positive number

Output 2:
Enter a number: -1
Negative number

Output 3:
Enter a number: 0
Zero
Bidang Keahlian: Laboratorium: Tanggal:
Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
12 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
1.5. Pengulangan Proses (Looping)
Secara umum, pernyataan dieksekusi secara berurutan: Pernyataan pertama dalam suatu fungsi
dijalankan pertama, diikuti oleh yang kedua, dan seterusnya. Mungkin ada situasi ketika Anda
perlu mengeksekusi blok kode beberapa kali.
Bahasa pemrograman menyediakan berbagai struktur kontrol yang memungkinkan jalur
eksekusi yang lebih rumit. Pernyataan loop memungkinkan kita untuk mengeksekusi pernyataan
atau sekelompok pernyataan beberapa kali.
Tabel 1.5 Perintah-Perintah Python Loop
No Perintah Diskripsi
1 For Menjalankan urutan pernyataan beberapa kali dan menyingkat kode
yang mengelola variabel loop.
2 while Mengulangi pernyataan atau sekelompok pernyataan saat kondisi
yang diberikan True. Ini menguji kondisi sebelum menjalankan badan
perulangan.
3 Nested loop Anda dapat menggunakan satu atau lebih loop di dalam while lainnya,
for atau do.. while loop.

Perintah Kontrol Loop


Pernyataan kontrol loop mengubah eksekusi dari urutan normalnya. Saat eksekusi
meninggalkan ruang lingkup, semua objek otomatis yang dibuat dalam lingkup itu dimusnahkan.
Python mendukung pernyataan kontrol berikut.
Tabel 1. 5 Perintah-Perintah Kontrol Loop
No Perintah Diskripsi
1 break Menghentikan pernyataan loop dan mentransfer eksekusi ke
pernyataan segera setelah loop.
2 continue Menyebabkan loop melewati sisa tubuhnya dan segera menguji ulang
kondisinya sebelum mengulang.
3 pass Pernyataan pass dalam Python digunakan ketika pernyataan
diperlukan secara sintaksis tetapi Anda tidak ingin perintah atau kode
apa pun dieksekusi.

Sintak Perintah Python for


Perulangan for di Python digunakan untuk mengulangi urutan (list, tuple, string) atau objek
iterable lainnya. Iterasi pada suatu urutan disebut traversal.

for val in sequence:


Body of for
Di sini, val adalah variabel yang mengambil nilai item di dalam urutan pada setiap iterasi.
Pengulangan berlanjut hingga kita mencapai item terakhir dalam urutan. Badan loop for

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
13 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
dipisahkan dari kode lainnya menggunakan indentasi. Flowchart perintah for ditunjukkan dalam
Gambar 1.8

Gambar 1.8 Flowchart perintah for


Contoh
# List of numbers
numbers = [6, 5, 3, 8, 4, 2, 5, 4, 11]

# variable to store the sum


sum = 0

# iterate over the list


for val in numbers:
sum = sum + val

print(numbers)
print("The sum is", sum)

Saat Anda menjalankan program, hasilnya adalah:

Fungsi range()
Kita bisa menghasilkan urutan angka menggunakan fungsi range(). range (10) akan
menghasilkan angka dari 0 sampai 9 (10 angka).Kita juga bisa mendefinisikan ukuran start, stop
dan step sebagai range(start, stop, step_size). step_size default ke 1 jika tidak disediakan.
Untuk memaksa fungsi ini mengeluarkan semua item, kita dapat menggunakan function list().

Contoh berikut akan menjelaskan hal ini.


print(range(10))
print(list(range(10)))
print(list(range(2, 8)))

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
14 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
Output:
range(0, 10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[2, 3, 4, 5, 6, 7]

Kita bisa menggunakan fungsi range () di for loop untuk mengulang melalui urutan angka. Itu
dapat dikombinasikan dengan fungsi len () untuk mengulang melalui urutan menggunakan
pengindeksan. Berikut ini contohnya.
genre = ['pop', 'rock', 'jazz']

# iterate over the list using index


for i in range(len(genre)):
print("I like", genre[i])
Output:
I like pop
I like rock
I like jazz

for loop dengan else


Sebuah for loop dapat memiliki blok else opsional juga. Bagian lain dijalankan jika item dalam
urutan yang digunakan dalam for loop habis. Kata kunci break dapat digunakan untuk
menghentikan pengulangan for. Dalam kasus seperti itu, bagian lain akan diabaikan. Oleh karena
itu, bagian lain dari perulangan for berjalan jika tidak ada pemutusan hubungan kerja.
Berikut adalah contoh untuk menggambarkan hal ini.
digits = [0, 1, 5]

for i in digits:
print(i)
else:
print("No items left.")
Saat Anda menjalankan program, hasilnya adalah:
0
1
5
No items left.
Di sini, loop for mencetak item dari daftar hingga loop habis. Ketika loop for habis, ia
mengeksekusi blok kode di else dan mencetak no items left.
Pernyataan for...else dapat digunakan dengan kata kunci break untuk menjalankan blok else
hanya jika kata kunci break tidak dieksekusi. Mari kita ambil contoh:

# program to display student's marks from record


student_name = 'Soyuj'

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
15 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
marks = {'James': 90, 'Jules': 55, 'Arthur': 77}

for student in marks:


if student == student_name:
print(marks[student])
break
else:
print('No entry with that name found.')

Output:

No entry with that name found.

Perulangan while dalam Python digunakan untuk mengulang satu blok kode selama ekspresi uji
(kondisi) benar.Kami biasanya menggunakan perulangan ini ketika kami tidak mengetahui berapa
kali untuk mengulang sebelumnya.

Sintak Perintah Python while


Perulangan while di Python digunakan untuk mengulangi urutan (list, tuple, string) atau objek
iterable lainnya. Iterasi pada suatu urutan disebut traversal.

while test_expression:
Body of while

Dalam while loop, ekspresi tes diperiksa terlebih dahulu. Isi loop hanya dimasukkan jika
test_expression bernilai True. Setelah satu iterasi, ekspresi tes diperiksa lagi. Proses ini berlanjut
hingga test_expression bernilai False. Di Python, body loop while ditentukan melalui lekukan.
Body dimulai dengan lekukan dan baris pertama yang tidak menjorok menandai akhir. Python
mengartikan nilai bukan nol sebagai True. None dan 0 diartikan sebagai False. Flowchart perintah
while ditunjukkan dalam Gambar 1.9

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
16 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
Gambar 1.9 Flowchart perintah while
Contoh

# Program to add natural


# numbers up to
# sum = 1+2+3+...+n

# To take input from the user,

n = int(input("Enter n: "))

# initialize sum and counter


sum = 0
i=1

while i <= n:
sum = sum + i
i = i+1 # update counter

# print the sum


print("The sum is", sum)

Saat Anda menjalankan program, hasilnya adalah:

Analisa Program
Dalam program di atas, ekspresi tes akan menjadi True selama variabel penghitung kita i kurang
dari atau sama dengan n (10 dalam program kita). Kita perlu meningkatkan nilai variabel counter
di badan loop. Ini sangat penting (dan kebanyakan dilupakan). Kegagalan untuk melakukannya
akan menghasilkan loop tak terbatas (loop tanpa akhir).

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
17 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
while…else
Sama seperti for loop, loop juga dapat memiliki blok else opsional. Bagian lain dijalankan jika
kondisi di loop sementara bernilai False. Perulangan while dapat diakhiri dengan pernyataan
break. Dalam kasus seperti itu, bagian lain akan diabaikan. Oleh karena itu, bagian lain loop
sementara berjalan jika tidak ada pemutusan yang terjadi dan kondisinya salah. Berikut adalah
contoh untuk menggambarkan hal ini.
counter = 0

while counter < 3:


print("Inside loop")
counter = counter + 1
else:
print("Inside else")
Output:
Inside loop
Inside loop
Inside loop
Inside else
Di sini, kami menggunakan variabel counter untuk mencetak string Inside loop tiga kali. Pada
iterasi keempat, kondisi sementara menjadi False. Karenanya, bagian lain dijalankan.

1.6. Fungsi
Di Python, fungsi adalah sekelompok pernyataan terkait yang melakukan tugas tertentu. Fungsi
membantu memecah program kita menjadi bagian yang lebih kecil dan modular. Seiring program
kami tumbuh semakin besar, fungsi membuatnya lebih terorganisir dan mudah dikelola. Selain
itu, ini menghindari pengulangan dan membuat kode dapat digunakan kembali disajikan dalam
Gambar 1.10

Gambar 1.10 Cara kerja fungsi dalam Python

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
18 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
Sintak membuat Fungsi

def function_name(parameters):
"""docstring"""
statement(s)

Di atas ditunjukkan adalah definisi fungsi yang terdiri dari komponen-komponen berikut.
1. Kata kunci def yang menandai dimulainya header fungsi.
2. Nama fungsi untuk mengidentifikasi fungsi secara unik. Penamaan fungsi mengikuti aturan
yang sama dalam menulis pengenal dengan Python.
3. Parameter (argumen) yang digunakan untuk meneruskan nilai ke suatu fungsi.
4. Titik dua (:) untuk menandai akhir dari header fungsi.
5. String dokumentasi opsional (docstring) untuk mendeskripsikan fungsi.
6. Satu atau lebih pernyataan python valid yang menyusun badan fungsi. Perintah harus memiliki
tingkat indentasi yang sama (biasanya 4 spasi).
7. Perintah return opsional untuk mengembalikan nilai dari fungsi.
Contoh
def greet(name):
print("Hello, " + name + ". Good morning!")

Bagaimana cara memanggil fungsi di python?


Setelah kita mendefinisikan sebuah fungsi, kita dapat memanggilnya dari fungsi lain, program
atau bahkan prompt Python. Untuk memanggil suatu fungsi, kita cukup mengetikkan nama fungsi
dengan parameter yang sesuai.

>>> greet('Paul')
Hello, Paul. Good morning!

Selanjutnya lengkapi program berikut,


def greet(name):
"""
This function greets to
the person passed in as
a parameter
"""
print("Hello, " + name + ". Good morning!")

greet('Paul')

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
19 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
Perintah return
Pernyataan return digunakan untuk keluar dari fungsi dan kembali ke tempat pemanggilannya.

return [expression_list]

Pernyataan ini dapat berisi ekspresi yang dievaluasi dan nilainya dikembalikan. Jika tidak ada
ekspresi dalam pernyataan return itu sendiri tidak ada di dalam fungsi, maka fungsi tersebut akan
mengembalikan objek None.
>>> print(greet("May"))
Hello, May. Good morning!
None
Di sini, None adalah nilai yang dikembalikan karena greet () langsung mencetak nama dan tidak
ada pernyataan return yang digunakan.
Contoh:
def absolute_value(num):
"""This function returns the absolute
value of the entered number"""
if num >= 0:
return num
else:
return -num

print(absolute_value(2))
print(absolute_value(-4))
Output:
2
4

Argumen
Dalam topik fungsi yang ditentukan pengguna, kita belajar tentang mendefinisikan fungsi dan
memanggilnya. Jika tidak, pemanggilan fungsi akan menghasilkan kesalahan. Berikut ini
contohnya.

def greet(name, msg):


print("Hello", name + ', ' + msg)

greet("Monica", "Good morning!")


Output:
Hello Monica, Good morning!

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
20 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
Analisa Program
Di sini, fungsi greet() memiliki dua parameter. Karena kami telah memanggil fungsi ini dengan
dua argumen, ini berjalan dengan lancar dan kami tidak mendapatkan kesalahan apa pun. Jika
kita menyebutnya dengan jumlah argumen yang berbeda, interpreter akan menampilkan pesan
error.

Fungsi Rekursif

Rekursi adalah proses mendefinisikan sesuatu dalam istilah itu sendiri.Contoh dunia fisik adalah
menempatkan dua cermin paralel saling berhadapan. Objek apa pun di antara mereka akan
dipantulkan secara rekursif.
Dengan Python, kita tahu bahwa suatu fungsi dapat memanggil fungsi lain. Bahkan dimungkinkan
bagi fungsi untuk memanggil dirinya sendiri. Jenis konstruksi ini disebut sebagai fungsi rekursif.
Gambar 1.11 menunjukkan kerja fungsi rekursif yang disebut rekursi.

Gambar 1.12 Fungsi Rekursif


Berikut adalah contoh fungsi rekursif untuk mencari faktorial dari sebuah bilangan bulat.Faktorial
suatu angka adalah hasil kali semua bilangan bulat dari 1 sampai angka itu. Misalnya, faktorial
dari 6 (dilambangkan sebagai 6!) Adalah 1 * 2 * 3 * 4 * 5 * 6 = 720.
Contoh:
def factorial(x):
"""This is a recursive function
to find the factorial of an integer"""

if x == 1:
return 1
else:
return (x * factorial(x-1))

num = 3
print("The factorial of", num, "is", factorial(num))

Output :
The factorial of 3 is 6

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
21 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
Analisa Program
Dalam contoh di atas, faktorial () adalah fungsi rekursif saat memanggil dirinya sendiri.
Saat kita memanggil fungsi ini dengan bilangan bulat positif, fungsi ini akan secara rekursif
memanggil dirinya sendiri dengan mengurangi angkanya. Setiap fungsi mengalikan bilangan
dengan faktorial dari bilangan di bawahnya hingga sama dengan satu. Panggilan rekursif ini dapat
dijelaskan dalam langkah-langkah berikut.
factorial(3) # 1st call with 3
3 * factorial(2) # 2nd call with 2
3 * 2 * factorial(1) # 3rd call with 1
3*2*1 # return from 3rd call as number=1
3*2 # return from 2nd call
6 # return from 1st call

Mari kita lihat gambar yang menunjukkan proses langkah demi langkah dari apa yang sedang
terjadi:

Gambar 1.12 Cara Kerja Fungsi Rekursif

1.7. Fungsi
Module di Python
Modul merujuk ke file yang berisi pernyataan dan definisi Python. File yang berisi kode Python,
misalnya: example.py, disebut modul, dan nama modulnya akan menjadi contoh. Kami
menggunakan modul untuk memecah program besar menjadi file kecil yang dapat dikelola dan
diatur. Selain itu, modul menyediakan kode yang dapat digunakan kembali. Kita dapat
mendefinisikan fungsi yang paling sering kita gunakan dalam sebuah modul dan mengimpornya,
daripada menyalin definisinya ke program yang berbeda. Mari kita buat modul. Ketik berikut ini
dan simpan sebagai example.py.

# Python Module example


Bidang Keahlian: Laboratorium: Tanggal:
Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
22 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
def add(a, b):
"""This program adds two
numbers and return the result"""

result = a + b
return result

Di sini, telah didefinisikan fungsi add () di dalam modul bernama example.py. Fungsi tersebut
mengambil dua angka dan mengembalikan jumlahnya.

Bagaimana cara mengimport modul dengan Python?


Kita dapat mengimpor definisi di dalam modul ke modul lain atau interpreter interaktif dengan
Python. Kami menggunakan kata kunci import untuk melakukan ini. Untuk mengimpor example.py
modul yang kami definisikan sebelumnya, kami mengetik yang berikut ini di prompt Python.

>>> import example.add(4,5.5)


Ini tidak mengimpor nama fungsi yang ditentukan dalam contoh secara langsung di tabel simbol
saat ini. Itu hanya mengimpor contoh nama modul di sana. Menggunakan nama modul kita dapat
mengakses fungsi menggunakan titik. operator. Sebagai contoh:

>>> example.add(4,5.5)
9.5

Python memiliki banyak modul standar. Anda dapat melihat daftar lengkap modul standar Python
dan kasus penggunaannya. File-file ini ada di direktori Lib di dalam lokasi tempat Anda
menginstal Python. Modul standar dapat diimpor dengan cara yang sama seperti kita mengimpor
modul yang ditentukan pengguna. Ada berbagai cara untuk mengimpor modul.
Kita dapat mengimpor modul menggunakan pernyataan import dan mengakses definisi di
dalamnya menggunakan operator titik seperti dijelaskan di atas. Berikut ini contohnya,

# import statement example


# to import standard module math

import math
print("The value of pi is", math.pi)
Saat Anda menjalankan program, hasilnya adalah:

The value of pi is 3.141592653589793

Import dengan Penggantian Nama


Bidang Keahlian: Laboratorium: Tanggal:
Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
23 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
# import module by renaming it

import math as m
print("The value of pi is", m.pi)

Penggantian nama modul math menjadi m. Ini dapat menghemat waktu mengetik dalam beberapa
kasus. Perhatikan bahwa nama math tidak dikenali dalam lingkup kami. Karenanya, math.pi tidak
valid, dan m.pi adalah implementasi yang benar.

Perintah Python from...import

Kita dapat mengimpor nama tertentu dari modul tanpa mengimpor modul secara keseluruhan.
Berikut ini contohnya.

# import only pi from math module

from math import pi


print("The value of pi is", pi)

Di sini, mengimpor atribut pi dari modul math. Dalam kasus seperti itu, kami tidak menggunakan
operator titik. Kami juga dapat mengimpor beberapa atribut sebagai berikut:
>>> from math import pi, e
>>> pi
3.141592653589793
>>> e
2.718281828459045

Import all Name

Kita dapat mengimpor semua nama (definisi) dari modul menggunakan konstruksi berikut:

# import all names from the standard module math

from math import *


print("The value of pi is", pi)

Mengimpor (import *) semua definisi dari modul math. Ini mencakup semua nama yang terlihat
dalam cakupan kami, kecuali yang diawali dengan garis bawah.
Meng-import segala sesuatu dengan simbol asterisk (*) bukanlah praktik pemrograman yang
baik. Ini dapat menyebabkan definisi duplikat untuk pengenal. Itu juga menghambat pembacaan
kode kita.
Bidang Keahlian: Laboratorium: Tanggal:
Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
24 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
1.8. Tugas Praktikum

1.8.1 Kode Program terkait dengan Fungsi Input, Output, dan Operator
1. Jalankan dan analisa kode program :
# Ambil input untuk mengisi nilai
a = int(input("Inputkan nilai a: "))
b = int(input("Inputkan nilai b: "))

# Menggunakan operator penjumlahan


c=a+b
print ("Hasil ", a, "+" , b,"=", c )

# Menggunakan operator pengurangan


c=a-b
print ("Hasil ", a, "-" , b,"=", c )

# Menggunakan operator perkalaian


c=a*b
print ("Hasil ", a, "X" , b,"=", c )

# Menggunakan operator pembagian


c=a/b
print ("Hasil ", a, "/" , b,"=", c )

# Menggunakan operator sisa bagi


c=a%b
print ("Hasil ", a, "%" , b,"=", c )

# Menggunakan operator pangkat


c = a ** b
print ("Hasil ", a, "^" , b,"=", c )

2. Jalankan dan analisa kode program :


a = int(input("Inputkan nilai a: "))
b = int(input("Inputkan nilai b: "))

# apakah a sama dengan b?


c = a == b
print ("Apakah" ,a, "==" ,b, ":",c)

# apakah a < b?
c=a<b
print ("Apakah" ,a, "<" ,b, ":",c)

# apakah a > b?
c=a>b
print ("Apakah" ,a, ">" ,b, ":",c)

# apakah a <= b?
c = a <= b
print ("Apakah" ,a, "<=" ,b, ":",c)

# apakah a >= b?
c = a >= b
print ("Apakah" ,a, ">=" ,b, ":",c)

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
25 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
# apakah a != b?
c = a != b
print ("Apakah" ,a, "!=" ,b, ":",c)

3. Jalankan dan analisa kode program :


a = True
b = False

# Logika AND
c = a and b
print (a, "and", b, "adalah", c)

# Logika OR
c = a or b
print (a, "or", b, "adalah", c)

# Logika NOT
c = not a
print ("not", a, "adalah", c)

1.8.2 Kode Program terkait dengan Struktur Kontrol Percabangan dan Pengulangan

1. Jalankan dan analisa kode program:


total_belanja = int(input("Total belanja: Rp "))
bayar = total_belanja

if total_belanja > 100000:


print("Kamu mendapatkan bonus minuman dingin")
print("dan diskon 5%")
diskon = total_belanja * 5/100
bayar = total_belanja - diskon

print("Total yang harus dibayar: Rp ", bayar)


print("Terima kasih sudah berbelanja")
print("Datang lagi yaa...")

2. Jalankan dan analisa kode program:

jawab = 'ya'
hitung = 0

while(True):
hitung += 1
jawab = input("Apakah Anda mau ulang lagi(ya/tidak)? ")
if jawab == 'tidak':
break

print("Total perulagan: " + str(hitung))

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
26 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
3. Jalankan dan analisa kode program:

Pada baris ke-8 ubahlah perintah break dengan continue

1.8.3 Kode Program terkait dengan Fungsi dan Modul


1. Jalankan dan analisa kode program:

2. Jalankan dan analisa kode program:


rumusBidang.py

mainBidang.py

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
27 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
3. Jalankan dan analisa kode program:

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
28 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro
DAFTAR PUSTAKA

[1] Vujovic, V. ,Maksimovic, M. (2015) Raspberry Pi as a Sensor Web node for


home automation. Computers and Electrical Engineers, Vol. 44.

[2] Alee, R. (2013) Reading Data From a Digital Multimeter Using a Raspberry Pi,
Tesis, Turku University of Applied Science, Istambul.

[3] Richard Blum (2014), Python Programming for Raspberry Pi in 24 Hours, Sams
Teach Yourself.

[4] Santoso, B.I. (2010) Bahasa Pemrograman Python Di Platform GNU/LINUX,


Universitas Multimedia Nusantara, Tangerang.

[5] https://www.raspberrypi.org/documentation/usage/python/

[6] https://www.programiz.com/python-programming

[7] https://www.w3schools.com/python

[8] https://www.petanikode.com/tutorial/python/

[9] https://www.guru99.com/python-tutorials.html

Bidang Keahlian: Laboratorium: Tanggal:


Juli. 2023
70 01 02 VT
Teknologi Informasi RPL-403 Hal
Program Keahian: Pemrograman Rev.Tanggal: Dibuat oleh:
29 - 29
Pengembangan PL dan Gim Terstruktur 27/06/2023 Eko Subiyantoro

Anda mungkin juga menyukai