Perulangan For
For pada python agak berbeda dengan for yang ada pada bahasa lain. pada python for berfungsi untuk melakukan iterasi pada sequence, sequence adalah tipe data berurut seperti string, list, dimana akan diambil elemen dari sequence satu persatu sampai elemen terakhir dari sequence, mirip dengan foreach pada PHP.
for val in sequence:
perintah()
diatas adalah syntax for, dimana val adalah variabel yang akan merepresentasikan masing-masing elemen yang ada di dalam sequence. Perulangan akan terus berjalan sampai pada elemen terakhir dari sequence. perlu anda perhatikan perintah pada for diberikan indentasi diawal untuk menyatakan bahwa perintah tersebut berada didalam for, sama seperti Kondisi If berikut adalah contoh perulangan pada List.
namaHewan = ["sapi","kerbau","harimau","ikan","ayam"]
for hewan in namaHewan:
print(hewan)
Output:
sapi kerbau harimau ikan ayam
Hal ini bisa juga kita lakukan pada tuple, set, dan dictionary, akan tetapi pada dictionary perulangan akan mengambil key-nya, bukan value.
harga = {'pensil': 3000, 'pulpen': 5000}
for a in harga:
print(a)
Output:
pensil pulpen
Output yang dihasilkan bila variabel a di print akan menghasilkan pensil dan pulpen. bila kita ingin mengambil value, cukup memanggil variabel harga dengan index a.
harga = {'pensil': 3000, 'pulpen': 5000}
for a in harga:
print(harga[a])
Output:
3000 5000
atau anda juga dapat memanfaatkan built-in method yaitu values(). dimana values() akan mengembalikan nilai/value dar dictionary.
harga = {'pensil': 3000, 'pulpen': 5000}
for a in harga.values():
print(a)
anda juga dapat melakukan perulangan pada string, karena string masuk kedalam tipe sequence.
nama = 'Labkommat'
for a in nama:
print(a)
Output:
L a b k o m m a t
perhatikan output diatas, bila kita melakukan perulangan for pada string maka yang diambil adalah setiap karakter pada String yang kita punya.
lalu bagaimana jika kita ingin menentukan banyaknya perulangan? kita dapat menggunakan function bawaan python yang namanya range(). function range() akan menghasilkan sequence berupa angka(integer). pada contoh berikut kita akan membuat range lalu kita konversi ke list agar mudah kita pelajari.
data = range(10)
print(list(data))
Output:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Dapat anda lihat range(10) ini akan membuat sequence integer dimulai dari 0 sampai 9 (tidak termasuk 10). kita dapat memasukkan beberapa parameter pada fungsi range, yaitu start, stop, step. dengan format range(start, stop, step). yang wajib kita masukkan adalah parameter stop. untuk start dan step nilai defaultnya adalah 0 dan 1. berikut contoh-contoh range:
range1 = list(range(10))
range2 = list(range(1, 11))
range3 = list(range(0, 30, 5))
range4 = list(range(0, 10, 3))
range5 = list(range(0, -10, -1))
range6 = list(range(0))
range7 = list(range(1, 0))
print(range1)
print(range2)
print(range3)
print(range4)
print(range5)
print(range6)
print(range7)
Output:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] [0, 5, 10, 15, 20, 25] [0, 3, 6, 9] [0, -1, -2, -3, -4, -5, -6, -7, -8, -9] [] []
range ini dapat kita gunakan untuk menentukan banyaknya perulangan sesuai keinginan kita seperti bahasa pemrograman lain. contoh jika kita ingin melakukan perulangan dari 1 sampai 10 maka kita gunakan range(1,11).
data = range(1,11)
for a in data:
print(a)
Output:
1 2 3 4 5 6 7 8 9 10
For Else
pada perulangan for bisa juga ditambahkan else, dimana else ini akan dieksekusi pada saat perulangan for selesai dilakukan.
digits = [0, 1, 5]
for i in digits:
print(i)
else:
print("No items left.")
Output:
0 1 5 No items left.
bagi teman-teman yang ingin mempelajari perulangan for lebih lanjut silahkan kunjungi link berikut for documentation
masih ada satu metode perulangan yang akan kita pelajari di tutorial selanjutnya.