List comprehension adalah sebuah cara pembuatan list secara singkat di bahasa pemrograman python tanpa membuat sebuah function. Jadi sobat akan membuat sebuah program di dalam list dan akan menghasilkan output yang sama ketika kita membuat program dengan sebuah function. Akan tetapi list comprehension biasanya digunakan hanya untuk membuat program-program yang simple. Misalnya program untuk mencetak angka-angka kuadrat, mencetak matriks, mencetak angka genap, mencetak angka ganjil, dan lain-lain.
Formula yang biasa digunakan adalah seperti ini :
[expression for iter var in iterable]
Dan formula yang lebih lanjut, biasanya membutuhkan kondisi-kondisi tertenru adalah seperti ini :
[expression for iter var in iterable if condition]
Untuk memperjelas materi kita hari ini, langsung saja scroll ke bawah untuk melihat contoh-contohnya sob :
NB : Saya menggunakan mode interactive pada materi ini dengan alasan agar tidak menghabiskan waktu. Jika sobat menulis di
- Membuat list cetak bilangan asli dengan range.[x for x in range(1,11)]"var x adalah nilai yang akan dicetak."
- Membuat list cetak kuadrat dari sebuah bilangan dengan range.[x**2 for x in range(1,11)]"x**2 artinya nilai dari var x dikuadratkan."
- Membuat list yang berisi tuple.[(x,x**2) for x in range(1,11)]"Tuple di dalam list berisi pasangan antara bilangan asli dan hasil kuadratnya."
- Membuat list yang berisi bilangan genap.[x for x in range(1,51) if x % 2 == 0]"Mencetak var x dengan nilai bilangan genap dalam range 1 sampai 51."
- Membuat list yang berisi satu bilangan dengan banyak n.[3 for x in range(10)]"Mencetak angka 3 sejumlah 10 elemen."
- Membuat matiks 0 dengan 3 dimensi (3x3).[[0 for y in range(3)]for x in range(3)]"Mencetak matriks 0 (3x3)."
- Membuat matrik identitas (4x4).[[1 if y == x else 0 for y in range(4)]for x in range(4)]"Cara membaca list comprehension di atas adalah : Matriks dasarnya adalah matriks 0 dengan dimensi 4 (4x4). Akan tetapi yang membedakan adalah adanya instruksi if yang menyebabkan beberapa elemen menjadi angka 1. Jika nilai var y sama dengan nilai var x dalam looping (perulangan) tersebut, maka elemen yang dicetak adalah angka 1."
- Membuat list yang berisi huruf vokal dari suatu string kalimat.[x for x in "Belajar bahasa python" if x in "AIUEOaiueo"]"Looping, dengan mengindeks string "Belajar bahasa python" satu per satu dan diwakili dengan var x. Kemudian mengambil keputusan bahwa nilai yang dicetak adalah nilai var x yang berada dalam daftar string "AIUEOaiueo".
Gambar dibawah ini adalah hasil dari contoh-contoh di atas :
Jika ada bagian yang salah atau belum dipahami, saya berharap sobat bisa membenarkan atau bertanya di kolom komentar. Saya akan berusaha memperbaiki atau menjawab pertanyaan sesuai kemampuan saya. Terimakasih atas kunjungan sobat :)
Ingin mengatahui lebih lanjut? Klik: https://mengenalpythonyuk.blogspot.com
ReplyDeletecara menampilkan list nya gimana gan?
ReplyDelete