Penjelasan List Comprehension dalam Python dengan Contoh
Pemahaman daftar menyediakan cara ringkas untuk membuat daftar dalam Python. Pemahaman daftar lebih mudah dibaca dan sering kali lebih efisien daripada menggunakan perulangan tradisional. Artikel ini akan membahas apa itu pemahaman daftar, cara kerjanya, dan memberikan contoh untuk mengilustrasikan penggunaannya.
Apa itu Pemahaman Daftar?
Pemahaman daftar adalah cara ringkas untuk memproses semua atau sebagian elemen dalam koleksi dan mengembalikan daftar dengan hasilnya. Sintaks pemahaman daftar adalah:
[expression for item in iterable if condition]
Di sini, expression
merupakan item saat ini dalam iterasi, tetapi ini juga merupakan hasilnya, yang dapat Anda manipulasi sebelum berakhir seperti item daftar. iterable
merupakan koleksi yang Anda lakukan pengulangan, dan condition
merupakan filter opsional yang hanya menyertakan item yang memenuhi kondisi.
Contoh Dasar
Membuat Daftar Kotak
Untuk membuat daftar kuadrat angka dari 0 hingga 9, Anda dapat menggunakan pemahaman daftar sebagai berikut:
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
squares = [x ** 2 for x in numbers]
print(squares)
Keluaran:
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
Memfilter Item
Anda juga dapat menambahkan kondisi untuk memfilter item. Misalnya, untuk mendapatkan hanya angka genap dari daftar:
even_squares = [x ** 2 for x in numbers if x % 2 == 0]
print(even_squares)
Keluaran:
[0, 4, 16, 36, 64]
Meratakan Daftar Daftar
Jika Anda memiliki daftar daftar dan ingin meratakannya, Anda dapat menggunakan pemahaman daftar:
list_of_lists = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
flattened = [item for sublist in list_of_lists for item in sublist]
print(flattened)
Keluaran:
[1, 2, 3, 4, 5, 6, 7, 8, 9]
Contoh Lanjutan
Menerapkan Fungsi
Anda dapat menerapkan fungsi dalam pemahaman daftar. Misalnya, untuk mengubah daftar string menjadi huruf kapital:
words = ['hello', 'world', 'python']
uppercase_words = [word.upper() for word in words]
print(uppercase_words)
Keluaran:
['HELLO', 'WORLD', 'PYTHON']
Pemahaman Bersarang
Pemahaman daftar dapat disarangkan. Misalnya, untuk membuat daftar tupel (i, j) di mana i dan j keduanya merupakan elemen dari dua daftar:
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
pairs = [(i, j) for i in list1 for j in list2]
print(pairs)
Keluaran:
[(1, 'a'), (1, 'b'), (1, 'c'), (2, 'a'), (2, 'b'), (2, 'c'), (3, 'a'), (3, 'b'), (3, 'c')]
Kesimpulan
Pemahaman daftar menawarkan cara yang ampuh dan ringkas untuk membuat daftar dalam Python. Pemahaman daftar dapat menyederhanakan kode Anda dan membuatnya lebih mudah dibaca dengan mengganti beberapa baris kode loop dengan satu baris pemahaman. Berlatihlah menggunakan pemahaman daftar agar lebih memahami sintaksis dan kemampuannya.