Python: Iterasi
Arti kata iterasi cukup asing di telinga kita, Iterasi adalah perulangan aksi sampai kita mencapai batas tertentu.
Iterasi seperti proses kita memakan sarapan, kita akan terus berulang memasukan makanan dengan sendok ke mulut untuk dikunyah dan ditelan hingga makan di piring habis (batas iterasi).
Iterasi sempat disebut dalam tulisan Python tentang koleksi. Bila diandaikan, Kolesi adalah makanan dan Iterasi adalah sendok pada analogi sarapan diatas.
Apa itu Iterasi ?
Iterasi dalam pemrograman untuk menjalankan sebuah aksi berulang terbatas pada banyaknya koleksi, berbeda dengan looping yang batasnya berupa pernyataan logik seperti pernyataan IF.
Untuk membuat iterasi dengan python menggunakan pernyataan for ... in ...
.
= ["dia" , "kamu" , "mereka"]
isiKenangan for kenangan in isiKenangan:
print(kenangan)
# dia
# kamu
# mereka
Kode diatas akan menampilkan isi kenangan, tanpa kita harus repot menulis print seperti ini:
= ["dia" , "kamu" , "mererka"]
isiKenangan
print(isiKenanagan[0])
print(isiKenanagan[1])
print(isiKenanagan[2])
Sekarang kita kuliti isi prinsip dari pernyataan for ... in ....
for [isi] in [koleksi]:
+ isi] [aksi
Penjelasan:
- variabel
[isi]
setelah keywordfor
akan mengambil urutan isi koleksi (enumerator
) dan akan menelusuri semua isi koleksi. [koleksi]
ini adalah koleksi yang ingin di iterasi isinya.[aksi + isi]
disini adalah kumpulan kode yang akan memakai variabel[isi]
dan di jalankan sampai semua isi koleksi selesai ditelusuri.
Iterasi dengan keyword iter
Keyword iter
memudahkan kita untuk melakukan iterasi tanpa harus terkurung oleh sebuah scoope, seperti pernyataan for ... in ...
.
= ["apple","ayam","ular"]
karungBuah
= iter(karungBuah) iterator
Variabel iterator berisi objek iterator dari koleksi buah. Untuk menelusuri isi koleki kita perlu menggunakan keyword next
.
= ["apple","ayam","ular"]
karungBuah
= iter(karungBuah)
iterator
print(next(karungBuah)) # apple
print(next(karungBuah)) # ayam
keyword next
akan mengembalikan nilai yang di telusuri. Jika nilai telah habis telusuri semua, maka keyword next
akan mengeluarkan error StopIteration
.