Cara Menggunakan Pemahaman Daftar dengan Python

Cara Menggunakan Pemahaman Daftar dengan Python

Penggunaan pemahaman daftar yang tepat waktu dengan Python dapat membuat operasi daftar berulang menjadi mudah bagi Anda. Selain menjadi satu baris, ini lebih mudah dibaca dan dieksekusi lebih efisien.





Namun, Anda mungkin kesal jika tidak tahu cara menggunakannya. Bahkan bisa lebih membuat frustrasi jika Anda tidak tahu di mana harus menerapkannya dalam kode Anda. Di sini, kami akan menunjukkan cara menggunakan pemahaman daftar dengan Python dengan beberapa contoh kehidupan nyata.





Apa itu Pemahaman Daftar dengan Python dan Bagaimana Cara Kerjanya?

Membuat daftar item dengan Python itu mudah. Namun, tugas dapat menjadi sedikit membosankan ketika Anda perlu membuat daftar nilai atau item dari operasi matematika atau string. Saat itulah menggunakan pemahaman daftar bisa berguna.





Keuntungan menggunakan pemahaman daftar adalah Anda dapat melakukan beberapa operasi dalam satu daftar.

bermain game online dengan teman di komputer yang berbeda

Sebaliknya, itu membuat item baru dan menambahkannya ke daftar kosong yang dideklarasikan secara otomatis. Jadi, alih-alih membuat daftar kosong secara manual dan menambahkannya dengan a untuk loop, pemahaman daftar Python memungkinkan Anda melakukan ini secara otomatis tanpa Anda peduli tentang bagaimana daftar baru muncul.



Istilah 'pemahaman daftar' berasal dari fakta bahwa semua operasi berada dalam daftar Python yang ditugaskan ke variabel bernama. Seperti yang kami nyatakan sebelumnya, ini memungkinkan Anda melakukan operasi tertentu dalam satu baris kode. Itu kemudian menambahkan output ke daftar baru.

Pada akhirnya, Anda juga dapat menggunakan output dari pemahaman daftar untuk tujuan lain. Itu karena ia menumpuk ekspresi dalam variabel terpisah. Jadi Anda bisa merujuknya nanti.





Misalnya, Anda mungkin menggores situs web dengan BeautifulSoup . Asumsikan Anda berniat untuk mendapatkan nama semua barang dan harganya dari situs web.

Anda kemudian memutuskan untuk meletakkan data tergores dalam file CSV atau Excel. Praktik yang ideal adalah mengikis nama semua item dan harganya dan menempatkan keduanya di kolom terpisah. Namun, menggunakan pemahaman daftar, dalam hal ini, memastikan bahwa Anda memiliki data tergores dalam variabel khusus. Anda kemudian dapat mengubah variabel tersebut menjadi Python DataFrame nanti.





Lihatlah contoh di bawah ini:

Products = [i.text for i in bs.find_all('name tags')]
Price = [i.text for i in bs.find_all('price tags')]

Setelah Anda mendapatkan variabel yang dilingkarkan, Anda dapat meletakkannya di kolom terpisah di DataFrame menggunakan Pandas Python.

Cara Membuat dan Menggunakan Pemahaman Daftar dengan Python

NS untuk loop adalah iterator penting dalam pemahaman daftar. Umumnya, pemahaman daftar dalam Python mengambil format ini:

ComprehensionVariable = [expression for items in list]

Pencetakan Variabel Pemahaman menampilkan hasil dari kode di atas sebagai daftar.

Namun, berhati-hatilah untuk tidak mengacaukan pemahaman daftar dengan pemahaman terbuka untuk lingkaran.

Misalnya, mari gunakan loop terbuka untuk untuk mendapatkan daftar semua kelipatan tiga antara 1 dan 30:

myList = []
for i in range(1, 11):
myList.append(i * 3)
print(myList)
Output: [3, 6, 9, 12, 15, 18, 21, 24, 27, 30]

Untuk membandingkan keduanya, mari lakukan hal yang sama menggunakan pemahaman daftar:

multiplesOf3 = [i*3 for i in range(1, 11)]
print(multiplesOf3)
Output = [3, 6, 9, 12, 15, 18, 21, 24, 27, 30]

Anda dapat menggunakan pemahaman daftar dengan pernyataan bersyarat juga. Contoh kode di bawah ini mencetak semua angka ganjil antara 1 dan 10:

oddNumbers = [i for i in range(1, 11) if not i%2==2]
print(oddNumbers)
Output = [1, 3, 5, 7, 9]

Sekarang, mari kita juga menulis ulang kode di atas menggunakan open untuk lingkaran:

myList = []
for i in range(1, 11):
if not i%2 == 0:
myList.append(i)
print(myList)
Output: [1, 3, 5, 7, 9]

Terkait: Cara Menambahkan Daftar dengan Python

Pemahaman daftar juga menerima pernyataan if bersarang:

oddNumbers = [i for i in range(1, 11) if not i%2==0 if i<4]
print(oddNumbers)
Output: [1, 3]

Itu juga membutuhkan bersarang untuk lingkaran:

someNums = [[i*2 for i in range(1, 3)] for _ in range(4)]
print(someNums)

Anda juga dapat memiliki sarang sederhana untuk loop dalam pemahaman daftar:

someNums = [i*2 for i in range(1, 3) for k in range(4)]

Anda dapat memanipulasi string dengan pemahaman daftar Python juga. Mari kita lihat pemahaman penghitung kata di bawah ini:

word = ['This is a python list comprehension tutorial']
wordCounter = [i.count(' ') + 1 for i in word]
print(wordCounter)
Output: 7

Pemahaman daftar juga dapat menerima fungsi yang melakukan operasi tertentu. Mari masukkan fungsi pengali yang mendapatkan angka genap dalam pemahaman daftar untuk melihat cara kerjanya:

Numbers = [4, 7, 8, 15, 17, 10]
def multiplier(n):
multiple = n*2
return multiple
multipleEven = [multiplier(i) for i in Numbers if i%2==0]
print(multipleEven)
Output: [8, 16, 20]

Anda masih dapat menulis kode di atas dalam satu fungsi tanpa menggunakan pemahaman. Tetapi pemahaman daftar berguna ketika Anda perlu melakukan beberapa iterasi dan menempatkan masing-masing dalam variabel terpisah.

Misalnya, Anda dapat melakukan operasi lain pada n dan memiliki variabel khusus untuk itu. Mari kita ubah pemahaman di atas untuk menghasilkan bilangan genap dari bilangan ganjil:

multipleEvenFromOdds = [multiplier(i) for i in Numbers if not i%2==0]
print(multipleEvenFromOdds)
Output: [14, 30, 34]

Kamus dan Set Pemahaman

Selain pemahaman daftar, Python juga menawarkan kamus dan fungsionalitas pemahaman set.

Lihat contoh pemahaman kamus di bawah ini untuk melihat cara kerjanya:

corresponding = {i: i*2 for i in range(10) if not i%2==0}
print(corr)
Output: {1: 2, 3: 6, 5: 10, 7: 14, 9: 18}

Kode di atas mengulangi daftar angka antara 1 dan 9 dan menjadikannya kunci. Kemudian memberitahu Python untuk mengalikan setiap kunci dengan dua. Akhirnya, ini menyajikan hasil operasi itu sebagai nilai yang sesuai untuk setiap kunci dalam larik yang dihasilkan.

Terkait: Bagaimana Array dan Daftar Bekerja dengan Python

Pemahaman set agak mirip dengan pemahaman daftar. Berikut ini contoh pemahaman himpunan:

dapatkan alamat email baru
numbers = {i**(2) for i in range(10) if i%4==0}
print(numbers)
Output: {0, 16, 64}

Namun, tidak seperti pemahaman daftar, pemahaman set menghapus duplikat:

nums = {i for i in range(20) if i%2==1 for k in range(10) if k%2==1}
print(nums)
Output: {1, 3, 5, 7, 9, 11, 13, 15, 17, 19}

Anda dapat mencoba kode di atas menggunakan pemahaman daftar untuk melihat perbedaannya.

Bisakah Anda Menggunakan Pemahaman Daftar Setiap Saat?

Kami telah melihat berbagai contoh pemahaman daftar dan di mana Anda dapat menggunakannya. Namun, seperti metode Python lainnya, kasus penggunaan pemahaman daftar bergantung pada masalah spesifik yang ingin Anda selesaikan. Oleh karena itu, Anda hanya boleh menggunakannya jika ideal untuk masalah spesifik yang ingin Anda pecahkan.

Salah satu tujuan pemahaman daftar adalah untuk menyederhanakan kode Anda dan membuatnya lebih mudah dibaca. Jadi, pastikan Anda menghindari kerumitan saat menghadapinya. Misalnya, pemahaman Python yang panjang bisa menjadi rumit untuk dibaca. Itu mengalahkan tujuannya.

Membagikan Membagikan Menciak Surel Cara Menggunakan Pemahaman Daftar Python (Dan Kapan Tidak Menggunakannya)

Inilah semua yang perlu Anda ketahui tentang menggunakan fitur luar biasa dari Python yang akan meningkatkan produktivitas dan keterbacaan kode Anda dalam semalam.

Baca Selanjutnya
Topik-topik yang berkaitan
  • Pemrograman
  • Python
Tentang Penulis Idisou Omisola(94 Artikel Diterbitkan)

Idowu bersemangat tentang teknologi dan produktivitas apa pun yang cerdas. Di waktu luangnya, dia bermain-main dengan coding dan beralih ke papan catur ketika dia bosan, tetapi dia juga suka melepaskan diri dari rutinitas sesekali. Semangatnya untuk menunjukkan kepada orang-orang tentang teknologi modern memotivasinya untuk menulis lebih banyak.

More From Idowu Omisola

Berlangganan newsletter kami

Bergabunglah dengan buletin kami untuk kiat teknologi, ulasan, ebook gratis, dan penawaran eksklusif!

Klik di sini untuk berlangganan