Dalam python, saat mengoperasikan daftar, kita mungkin perlu menyimpan setiap keluaran loop dalam kamus dengan setiap iterasi Show
Jadi resep ini adalah contoh singkat tentang cara menambahkan output for loop di kamus panda. Mari kita mulai Langkah 1 - Siapkan Datadf= {'Table of 9': [9,18,27], 'Table of 10': [10,20,30]} Mari kita membuat dataset tabel sederhana Langkah 2 - Menambahkan kamusfor i in range(4,11): df['Table of 9'].append(i*9) df['Table of 10'].append(i*1) Tambahkan fungsi pada daftar kamus tertentu membantu dalam menambahkan nilai. Di sini, untuk daftar yang ditetapkan sebelumnya, kami menambahkan nilai Dalam Python, untuk mengulangi kamus ( 0 loop, gunakan 1, 2, 3 metode. Anda juga bisa mendapatkan daftar semua kunci dan nilai dalam kamus dengan metode tersebut dan 4
Gunakan kamus berikut sebagai contoh _sumber. Anda dapat mengulangi kunci dengan menggunakan objek kamus secara langsung dalam loop 0
sumber. Tautan Bersponsor Ulangi kunci dalam kamus (dict). for k in d: print(k) # key1 # key2 # key3 _1Seperti disebutkan di atas, Anda dapat mengulangi kunci dengan menggunakan objek kamus secara langsung, tetapi Anda juga dapat menggunakan 1. Hasilnya sama, tetapi 1 dapat memperjelas maksud pembaca kode Kamus adalah salah satu struktur data yang paling penting dan berguna di Python. Mereka dapat membantu Anda memecahkan berbagai masalah pemrograman. Tutorial ini akan membawa Anda menyelami lebih dalam tentang cara melakukan iterasi melalui kamus dengan Python Di akhir tutorial ini, Anda akan mengetahuinya
Untuk informasi lebih lanjut tentang kamus, Anda dapat melihat sumber daya berikut
Siap? Download Gratis. Dapatkan contoh bab dari Trik Python. Buku yang menunjukkan kepada Anda praktik terbaik Python dengan contoh sederhana yang dapat Anda terapkan secara instan untuk menulis kode + Pythonic yang lebih indah Ikuti Kuis. Uji pengetahuan Anda dengan kuis “Iterasi Kamus Python” interaktif kami. Setelah selesai Anda akan menerima skor sehingga Anda dapat melacak kemajuan belajar Anda dari waktu ke waktu Ikuti Kuis » Beberapa Kata di KamusKamus adalah landasan Python. Bahasa itu sendiri dibangun di sekitar kamus. Modul, kelas, objek, _9, 0. semua ini adalah kamus. Kamus telah menjadi pusat Python sejak awalDokumentasi resmi Python mendefinisikan kamus sebagai berikut
Ada beberapa hal yang perlu diingat
Kamus sering digunakan untuk memecahkan semua jenis masalah pemrograman, jadi kamus adalah bagian mendasar dari kit alat Anda sebagai pengembang Python Tidak seperti , yang mendukung akses elemen menggunakan indeks bilangan bulat, kamus diindeks oleh kunci Kunci dalam kamus sangat mirip dengan 3, yang merupakan kumpulan objek hashable dan unik. Karena objek harus hashable, objek tidak dapat digunakan sebagai kunci kamusDi sisi lain, nilai bisa dari semua jenis Python, apakah itu hashable atau tidak. Secara harfiah tidak ada batasan untuk nilai Dalam Python 3. 6 dan seterusnya, kunci dan nilai kamus diulang dalam urutan yang sama saat dibuat. Namun, perilaku ini dapat bervariasi di berbagai versi Python, dan itu tergantung pada riwayat penyisipan dan penghapusan kamus Dalam Python2. 7, kamus adalah struktur yang tidak terurut. Urutan item kamus diacak. Ini berarti urutan item bersifat deterministik dan dapat diulang. Mari kita lihat contohnya >>> _Jika Anda meninggalkan juru bahasa dan membuka sesi interaktif baru nanti, Anda akan mendapatkan urutan item yang sama >>> _Melihat lebih dekat pada kedua keluaran ini menunjukkan kepada Anda bahwa urutan yang dihasilkan persis sama dalam kedua kasus. Itu sebabnya Anda dapat mengatakan bahwa pengurutan bersifat deterministik Dalam Python 3. 5, kamus masih tidak terurut, tetapi kali ini, struktur data diacak. Artinya, setiap kali Anda menjalankan ulang kamus, Anda akan mendapatkan urutan item yang berbeda. Mari lihat >>> _Jika Anda memasuki sesi interaktif baru, Anda akan mendapatkan yang berikut >>> _Kali ini, Anda dapat melihat bahwa urutan item berbeda di kedua keluaran. Itu sebabnya Anda dapat mengatakan itu adalah struktur data acak Dalam Python 3. 6 dan seterusnya, , yang berarti bahwa mereka menjaga elemen mereka dalam urutan yang sama dengan saat mereka diperkenalkan, seperti yang Anda lihat di sini >>> _Ini adalah fitur kamus Python yang relatif baru, dan ini sangat berguna. Tetapi jika Anda sedang menulis kode yang seharusnya dijalankan dalam versi Python yang berbeda, maka Anda tidak boleh mengandalkan fitur ini, karena dapat menghasilkan perilaku bermasalah. Fitur penting lain dari kamus adalah bahwa mereka adalah struktur data yang dapat diubah, yang berarti Anda dapat menambah, menghapus, dan memperbarui itemnya. Perlu dicatat bahwa ini juga berarti bahwa mereka tidak dapat digunakan sebagai kunci kamus lain, karena mereka bukan objek hashable Catatan. Semua yang telah Anda pelajari di bagian ini terkait dengan implementasi inti Python, CPython Implementasi Python lainnya, seperti PyPy, IronPython atau Jython, dapat menunjukkan perilaku dan fitur kamus berbeda yang berada di luar cakupan artikel ini Hilangkan iklanCara Melakukan Iterasi Melalui Kamus dengan Python. DasarKamus adalah struktur data yang berguna dan banyak digunakan di Python. Sebagai pembuat kode Python, Anda akan sering berada dalam situasi di mana Anda perlu melakukan iterasi melalui kamus dengan Python, saat Anda melakukan beberapa tindakan pada pasangan nilai kuncinya Dalam hal iterasi melalui kamus dengan Python, bahasa tersebut memberi Anda beberapa alat hebat yang akan kami bahas di artikel ini Iterasi Melalui Kunci Secara LangsungKamus Python adalah. Ini berarti mereka mewarisi beberapa metode khusus, yang digunakan Python secara internal untuk melakukan beberapa operasi. Metode-metode ini diberi nama menggunakan konvensi penamaan dengan menambahkan garis bawah ganda di awal dan di akhir nama metode Untuk memvisualisasikan metode dan atribut objek Python apa pun, Anda dapat menggunakan 4, yang merupakan fungsi bawaan yang melayani tujuan itu. Jika Anda menjalankan 4 dengan kamus kosong sebagai argumen, maka Anda akan dapat melihat semua metode dan atribut yang diterapkan kamus>>> _Jika Anda melihat lebih dekat pada keluaran sebelumnya, Anda akan melihat 6. Ini adalah metode yang dipanggil saat iterator diperlukan untuk wadah, dan harus mengembalikan yang baru yang dapat mengulangi semua objek dalam wadahCatatan. Output dari kode sebelumnya telah disingkat ( 7) untuk menghemat ruangUntuk pemetaan (seperti kamus), 8 harus mengulang kunci. Ini berarti bahwa jika Anda memasukkan kamus langsung ke loop 9, Python akan secara otomatis memanggil 8 pada kamus itu, dan Anda akan mendapatkan iterator di atas kuncinya>>> _Python cukup pintar untuk mengetahui bahwa _1 adalah kamus dan itu mengimplementasikan 8. Dalam contoh ini, Python memanggil _8 secara otomatis, dan ini memungkinkan Anda untuk mengulang kunci 1Ini adalah cara termudah untuk beralih melalui kamus dengan Python. Masukkan saja langsung ke _9 loop, dan selesaiJika Anda menggunakan pendekatan ini bersama dengan trik kecil, Anda dapat memproses kunci dan nilai kamus apa pun. Triknya terdiri dari penggunaan operator pengindeksan 6 dengan kamus dan kuncinya untuk mendapatkan akses ke nilai>>> _Kode sebelumnya memungkinkan Anda untuk mendapatkan akses ke kunci ( 7) dan nilai ( 8) dari 1 secara bersamaan. Dengan cara ini, Anda dapat melakukan operasi apa pun dengan kunci dan nilainyaIterasi Melalui >>> for key in a_dict: .. print(key, '->', a_dict[key]) ... color -> blue fruit -> apple pet -> dog _0Saat Anda bekerja dengan kamus, kemungkinan besar Anda ingin bekerja dengan kunci dan nilainya. Salah satu cara yang paling berguna untuk beralih melalui kamus dengan Python adalah dengan menggunakan 0, yang merupakan metode yang mengembalikan item kamus baru>>> _Tampilan kamus seperti 2 memberikan tampilan dinamis pada entri kamus, yang berarti saat kamus berubah, tampilan mencerminkan perubahan iniTampilan dapat diulangi untuk menghasilkan datanya masing-masing, sehingga Anda dapat mengulanginya melalui kamus dengan Python dengan menggunakan objek tampilan yang dikembalikan oleh 0
Objek tampilan dikembalikan oleh 0 menghasilkan pasangan kunci-nilai satu per satu dan memungkinkan Anda untuk beralih melalui kamus dengan Python, tetapi sedemikian rupa sehingga Anda mendapatkan akses ke kunci dan nilai pada waktu yang samaJika Anda melihat lebih dekat pada masing-masing item yang dihasilkan oleh 0, Anda akan melihat bahwa mereka benar-benar objek 6. Mari lihat>>> 0Setelah Anda mengetahuinya, Anda dapat menggunakan untuk beralih melalui kunci dan nilai kamus yang sedang Anda kerjakan. Untuk mencapainya, Anda hanya perlu membongkar elemen dari setiap item menjadi dua variabel berbeda yang mewakili kunci dan nilainya >>> 1Di sini, variabel 7 dan 9 di header loop 9 Anda lakukan pembongkaran. Setiap kali loop berjalan, _7 akan menyimpan kunci, dan 9 akan menyimpan nilai item yang telah diproses. Dengan cara ini, Anda akan memiliki kontrol lebih atas item kamus, dan Anda akan dapat memproses kunci dan nilai secara terpisah dan dengan cara yang lebih mudah dibaca dan PythonicCatatan. Perhatikan bahwa 3 dan 4 mengembalikan objek tampilan seperti 0, seperti yang akan Anda lihat di dua bagian berikutnyaHilangkan iklanIterasi Melalui >>> a_dict = {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} >>> d_items = a_dict.items() >>> d_items # Here d_items is a view of items dict_items([('color', 'blue'), ('fruit', 'apple'), ('pet', 'dog')]) _4Jika Anda hanya perlu bekerja dengan kunci kamus, maka Anda dapat menggunakan 4, yang merupakan metode yang mengembalikan objek tampilan baru yang berisi kunci kamus>>> 2Objek dikembalikan oleh _4 di sini memberikan tampilan dinamis pada tombol 1. Tampilan ini dapat digunakan untuk beralih melalui kunci 1Untuk beralih melalui kamus dengan Python dengan menggunakan 4, Anda hanya perlu memanggil 4 di header loop 9>>> 3Saat Anda menelepon 4 di 1, Anda akan melihat kunci. Python tahu bahwa objek tampilan adalah iterables, sehingga mulai berulang, dan Anda dapat memproses kunci 1Di sisi lain, dengan menggunakan trik yang sama yang pernah Anda lihat sebelumnya (operator pengindeksan 6), Anda bisa mendapatkan akses ke nilai kamus>>> 4Dengan cara ini Anda mendapatkan akses ke kunci ( 7) dan nilai ( 8) dari 1 secara bersamaan, dan Anda akan dapat melakukan tindakan apa pun terhadapnyaIterasi Melalui >>> a_dict = {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} >>> d_items = a_dict.items() >>> d_items # Here d_items is a view of items dict_items([('color', 'blue'), ('fruit', 'apple'), ('pet', 'dog')]) _3Ini juga umum untuk hanya menggunakan nilai untuk mengulang melalui kamus dengan Python. Salah satu cara melakukannya adalah dengan menggunakan _3, yang mengembalikan tampilan dengan nilai kamus>>> 5Dalam kode sebelumnya, _03 menyimpan referensi ke objek tampilan yang berisi nilai 1Seperti objek tampilan apa pun, objek yang dikembalikan oleh 3 juga dapat diulang. Dalam hal ini, _3 menghasilkan nilai 1>>> 6Menggunakan _3, Anda hanya akan mendapatkan akses ke nilai 1, tanpa berurusan dengan kunciPerlu dicatat bahwa mereka juga mendukung , yang merupakan fitur penting jika Anda mencoba mengetahui apakah elemen tertentu ada dalam kamus atau tidak. >>> ________20______7 Tes keanggotaan menggunakan 10 mengembalikan 12 jika kunci (atau nilai atau item) ada dalam kamus yang Anda uji, dan mengembalikan 13 jika tidak. Tes keanggotaan memungkinkan Anda untuk tidak beralih melalui kamus dengan Python jika Anda hanya ingin tahu apakah kunci tertentu (atau nilai atau item) ada dalam kamus atau tidakHilangkan iklanMemodifikasi Nilai dan KunciSangat umum untuk memodifikasi nilai dan kunci saat Anda melakukan iterasi melalui kamus dengan Python. Ada beberapa poin yang perlu Anda perhitungkan untuk menyelesaikan tugas ini Nilai, misalnya, dapat dimodifikasi kapan pun Anda perlukan, tetapi Anda harus menggunakan kamus asli dan kunci yang memetakan nilai yang ingin Anda ubah >>> ________20______8 Pada contoh kode sebelumnya, untuk mengubah nilai 14 dan menerapkan diskon 10%, Anda menggunakan ekspresi 15Jadi mengapa Anda harus menggunakan kamus asli jika Anda memiliki akses ke kuncinya (________20______16) dan nilainya ( 17)? Masalah sebenarnya adalah bahwa 16 dan 17 perubahan tidak tercermin dalam kamus asli. Yaitu, jika Anda memodifikasi salah satunya ( 16 atau 17) langsung di dalam loop, maka yang sebenarnya terjadi adalah Anda akan kehilangan referensi ke komponen kamus yang relevan tanpa mengubah apa pun di kamusDi sisi lain, kunci dapat ditambahkan atau dihapus dari kamus dengan mengonversi tampilan yang dikembalikan oleh 4 menjadi objek 23>>> ________20______9 Pendekatan ini mungkin memiliki beberapa implikasi kinerja, terutama terkait dengan konsumsi memori. Misalnya, alih-alih objek tampilan yang menghasilkan elemen sesuai permintaan, Anda akan memiliki 23 baru di memori sistem Anda. Namun, ini bisa menjadi cara yang aman untuk memodifikasi kunci saat Anda melakukan iterasi melalui kamus dengan PythonTerakhir, jika Anda mencoba menghapus kunci dari 14 dengan menggunakan 4 secara langsung, Python akan memunculkan 27 yang memberi tahu Anda bahwa ukuran kamus telah berubah selama iterasi>>> 0Ini karena 4 mengembalikan objek tampilan kamus, yang menghasilkan kunci sesuai permintaan satu per satu, dan jika Anda menghapus item ( 29), maka Python memunculkan 27, karena Anda telah memodifikasi kamus selama iterasiCatatan. Dalam Python 2, _0, 4, dan 3 mengembalikan 23 objek. Tapi _35, 36, dan 37 mengembalikan iterator. Jadi, jika Anda menggunakan Python 2, Anda dapat memodifikasi kunci kamus dengan menggunakan 4 secara langsungDi sisi lain, jika Anda menggunakan 36 dalam kode Python 2 Anda dan mencoba memodifikasi kunci kamus, maka Anda akan mendapatkan 27Contoh Dunia NyataSejauh ini, Anda telah melihat cara iterasi yang lebih mendasar melalui kamus dengan Python. Sekarang saatnya untuk melihat bagaimana Anda dapat melakukan beberapa tindakan dengan item kamus selama iterasi. Mari kita lihat beberapa contoh dunia nyata Catatan. Nanti di artikel ini, Anda akan melihat cara lain untuk memecahkan masalah yang sama dengan menggunakan alat Python lainnya Mengubah Kunci Menjadi Nilai dan SebaliknyaMisalkan Anda memiliki kamus dan karena alasan tertentu perlu mengubah kunci menjadi nilai dan sebaliknya. Dalam situasi ini, Anda dapat menggunakan _9 loop untuk beralih melalui kamus dan membangun kamus baru dengan menggunakan kunci sebagai nilai dan sebaliknya>>> 1Ekspresi _42 melakukan semua pekerjaan untuk Anda dengan mengubah kunci menjadi nilai dan menggunakan nilai sebagai kunci. Agar kode ini berfungsi, data yang disimpan dalam nilai asli harus berupa tipe data hashableHilangkan iklanItem PenyaringanKadang-kadang Anda akan berada dalam situasi di mana Anda memiliki kamus dan Anda ingin membuat kamus baru untuk menyimpan hanya data yang memenuhi kondisi tertentu. Anda dapat melakukan ini dengan pernyataan _43 di dalam 9 loop sebagai berikut>>> 2Dalam contoh ini, Anda telah memfilter item dengan nilai lebih besar dari 45. Sekarang _46 hanya berisi item yang memenuhi kondisi 47. Ini adalah salah satu solusi yang mungkin untuk masalah seperti ini. Nanti, Anda akan melihat cara yang lebih Pythonic dan mudah dibaca untuk mendapatkan hasil yang samaMelakukan Beberapa PerhitunganIni juga umum untuk melakukan beberapa perhitungan saat Anda mengulang melalui kamus dengan Python. Misalkan Anda telah menyimpan data penjualan perusahaan Anda di kamus, dan sekarang Anda ingin mengetahui total pendapatan tahun ini Untuk mengatasi masalah ini, Anda dapat menentukan variabel dengan nilai awal nol. Kemudian, Anda dapat mengakumulasikan setiap nilai kamus Anda dalam variabel tersebut >>> ________21______3 Di sini, Anda telah mengulangi 48 dan secara berurutan mengakumulasi nilainya di 49 seperti yang ingin Anda lakukan. Ekspresi _50 melakukan keajaiban, dan di akhir putaran, Anda akan mendapatkan total pendapatan tahun ini. Perhatikan bahwa _50 setara dengan 52Menggunakan PemahamanPemahaman kamus adalah cara ringkas untuk memproses semua atau sebagian elemen dalam koleksi dan mengembalikan kamus sebagai hasilnya. Berbeda dengan daftar pemahaman, mereka membutuhkan dua ekspresi yang dipisahkan dengan titik dua diikuti oleh 9 dan 43 klausa (opsional). Saat pemahaman kamus dijalankan, pasangan kunci-nilai yang dihasilkan dimasukkan ke dalam kamus baru dengan urutan yang sama seperti saat diproduksiMisalkan, misalnya, Anda memiliki dua daftar data, dan Anda perlu membuat kamus baru darinya. Dalam hal ini, Anda dapat menggunakan 55 Python untuk mengulang elemen dari kedua daftar secara berpasangan>>> 4Di sini, _56 menerima dua iterables ( 57 dan 58) sebagai argumen dan membuat iterator yang mengumpulkan elemen dari setiap iterable. Objek _6 yang dihasilkan oleh 56 kemudian dibongkar menjadi 7 dan 9, yang akhirnya digunakan untuk membuat kamus baruPemahaman kamus membuka spektrum kemungkinan baru yang luas dan memberi Anda alat yang hebat untuk beralih melalui kamus dengan Python Mengubah Kunci Menjadi Nilai dan Sebaliknya. Dikunjungi kembaliJika Anda melihat kembali masalah mengubah kunci menjadi nilai dan sebaliknya, Anda akan melihat bahwa Anda dapat menulis solusi yang lebih Pythonic dan efisien dengan menggunakan pemahaman kamus >>> 5Dengan pemahaman kamus ini, Anda telah membuat kamus yang sama sekali baru di mana kunci menggantikan nilai dan sebaliknya. Pendekatan baru ini memberi Anda kemampuan untuk menulis kode yang lebih mudah dibaca, ringkas, efisien, dan Pythonic Kondisi agar kode ini berfungsi sama dengan yang Anda lihat sebelumnya. nilainya harus berupa objek hashable. Jika tidak, Anda tidak akan dapat menggunakannya sebagai kunci untuk 46Hilangkan iklanItem Penyaringan. Dikunjungi kembaliUntuk memfilter item dalam kamus dengan pemahaman, Anda hanya perlu menambahkan 43 klausa yang menentukan kondisi yang ingin Anda penuhi. Pada contoh sebelumnya saat Anda memfilter kamus, kondisi tersebut adalah 65. Dengan klausa _43 ini ditambahkan ke akhir pemahaman kamus, Anda akan memfilter item yang nilainya lebih besar dari 45. Mari lihat>>> 6Sekarang _46 hanya berisi item yang memenuhi kondisi Anda. Dibandingkan dengan solusi sebelumnya, yang satu ini lebih Pythonic dan efisienMelakukan Beberapa Perhitungan. Dikunjungi kembaliIngat contoh dengan penjualan perusahaan? >>> ________21______7 Pemahaman daftar membuat _23 objek yang berisi nilai 48, dan kemudian Anda menyimpulkan semuanya dengan menggunakan 71 dan menyimpan hasilnya di 49Jika Anda bekerja dengan kamus yang sangat besar, dan penggunaan memori menjadi masalah bagi Anda, maka Anda dapat menggunakan alih-alih pemahaman daftar. Ekspresi generator adalah ekspresi yang mengembalikan iterator. Sepertinya pemahaman daftar, tetapi alih-alih tanda kurung, Anda perlu menggunakan tanda kurung untuk mendefinisikannya >>> ________21______8 Jika Anda mengubah tanda kurung siku untuk sepasang tanda kurung (tanda kurung 71 di sini), Anda akan mengubah pemahaman daftar menjadi ekspresi generator, dan kode Anda akan hemat memori, karena ekspresi generator menghasilkan elemen sesuai permintaan. Alih-alih membuat dan menyimpan seluruh daftar dalam memori, Anda hanya perlu menyimpan satu elemen dalam satu waktuCatatan. Jika Anda benar-benar baru mengenal ekspresi generator, Anda dapat melihat Pengantar Python Generator dan Generator Python 101 untuk mendapatkan pemahaman yang lebih baik tentang topik ini Terakhir, ada cara yang lebih sederhana untuk menyelesaikan masalah ini dengan hanya menggunakan 74 secara langsung sebagai argumen untuk 71>>> 9 71 menerima iterable sebagai argumen dan mengembalikan jumlah total elemennya. Di sini, _74 berperan sebagai iterable yang diteruskan ke 71. Hasilnya adalah total pendapatan yang Anda cariMenghapus Item TertentuSekarang, misalkan Anda memiliki kamus dan perlu membuat kamus baru dengan kunci yang dipilih dihapus. Ingat bagaimana objek tampilan kunci seperti set? . Objek tampilan kunci juga mendukung 3 operasi umum. Mari kita lihat bagaimana Anda dapat memanfaatkan ini untuk menghapus item tertentu dalam kamus>>> 0Kode ini berfungsi karena objek tampilan kunci mendukung 3 operasi seperti penyatuan, persimpangan, dan perbedaan. Ketika Anda menulis 81 di dalam pemahaman kamus, Anda benar-benar melakukan operasi perbedaan 3. Jika Anda perlu melakukan operasi _3 dengan kunci kamus, maka Anda dapat menggunakan objek tampilan kunci secara langsung tanpa terlebih dahulu mengubahnya menjadi 3. Ini adalah fitur yang sedikit diketahui dari objek tampilan kunci yang dapat berguna dalam beberapa situasiMenyortir KamusSeringkali diperlukan untuk mengurutkan elemen koleksi. Sejak Python 3. 6, kamus adalah struktur data yang dipesan, jadi jika Anda menggunakan Python 3. 6 (dan seterusnya), Anda akan dapat mengurutkan item kamus apa pun dengan menggunakan 85 dan dengan bantuan pemahaman kamus>>> 1Kode ini memungkinkan Anda membuat kamus baru dengan kuncinya dalam urutan terurut. Ini dimungkinkan karena _86 mengembalikan daftar kunci yang diurutkan yang dapat Anda gunakan untuk membuat kamus baru 87Untuk informasi lebih lanjut tentang cara menyempurnakan penyortiran Anda, lihat Menyortir Kamus Python. Nilai, Kunci, dan Lainnya Hilangkan iklanIterasi dalam Urutan TerurutKadang-kadang Anda mungkin perlu mengulang melalui kamus dengan Python tetapi ingin melakukannya dalam urutan yang diurutkan. Hal ini dapat dicapai dengan menggunakan ________20______85. Saat Anda memanggil _89, Anda mendapatkan 23 dengan elemen 91 dalam urutan terurutMari kita lihat bagaimana Anda dapat menggunakan _85 untuk beralih melalui kamus dengan Python saat Anda perlu melakukannya dalam urutan yang diurutkanDiurutkan berdasarkan KunciJika Anda perlu mengulang melalui kamus dengan Python dan ingin mengurutkannya berdasarkan kunci, maka Anda dapat menggunakan kamus Anda sebagai argumen untuk 85. Ini akan mengembalikan _23 yang berisi kunci dalam urutan terurut, dan Anda akan dapat mengulanginya>>> 2Dalam contoh ini, Anda mengurutkan kamus (menurut abjad) dengan kunci menggunakan 86 di header loop 9. Perhatikan bahwa Anda juga dapat menggunakan 97 untuk mendapatkan hasil yang sama. Dalam kedua kasus, Anda akan mendapatkan _23 yang berisi kunci kamus Anda dalam urutan yang diurutkanCatatan. Urutan penyortiran akan bergantung pada tipe data yang Anda gunakan untuk kunci atau nilai dan aturan internal yang digunakan Python untuk mengurutkan tipe data tersebut Diurutkan berdasarkan NilaiAnda juga perlu melakukan iterasi melalui kamus dengan Python dengan item-itemnya diurutkan berdasarkan nilai. Anda juga dapat menggunakan 85, tetapi dengan argumen kedua bernama 7Argumen kata kunci _7 menentukan fungsi dari satu argumen yang digunakan untuk mengekstrak kunci perbandingan dari setiap elemen yang Anda prosesUntuk mengurutkan item kamus berdasarkan nilai, Anda dapat menulis fungsi yang mengembalikan nilai setiap item dan menggunakan fungsi ini sebagai argumen 7 ke 85>>> ________22______3 Dalam contoh ini, Anda mendefinisikan _04 dan menggunakannya untuk mengurutkan item 48 berdasarkan nilai. Kemudian Anda beralih melalui kamus dalam urutan yang diurutkan dengan menggunakan 85. Fungsi kunci ( _04) memberi tahu 85 untuk mengurutkan 09 berdasarkan elemen kedua dari setiap item, yaitu berdasarkan nilai ( 10)Anda mungkin juga hanya ingin mengulangi nilai kamus dalam urutan yang diurutkan, tanpa mengkhawatirkan kuncinya. Dalam hal ini, Anda dapat menggunakan 3 sebagai berikut>>> 4 12 mengembalikan nilai kamus dalam urutan yang Anda inginkan. Kunci tidak dapat diakses jika Anda menggunakan 74, tetapi terkadang Anda tidak benar-benar membutuhkan kunci, hanya nilainya, dan ini adalah cara cepat untuk mengaksesnyaTerbalikJika Anda perlu mengurutkan kamus Anda dalam urutan terbalik, Anda dapat menambahkan 14 sebagai argumen untuk 85. Argumen kata kunci _16 harus mengambil nilai Boolean. Jika diatur ke _12, maka elemen diurutkan dalam urutan terbalik>>> 5Di sini, Anda mengulangi kunci 48 dalam urutan terbalik dengan menggunakan 19 di header 9 loopAkhirnya, penting untuk dicatat bahwa ________20______85 tidak benar-benar mengubah urutan kamus yang mendasarinya. Apa yang sebenarnya terjadi adalah _85 membuat daftar independen dengan elemennya dalam urutan terurut, jadi 48 tetap sama>>> 6Kode ini menunjukkan bahwa _48 tidak berubah. 85 tidak mengubah 48. Itu baru saja membuat daftar terurut baru dari kunci 48Hilangkan iklanIterasi Secara Merusak Dengan >>> # Python 3.5 >>> a_dict = {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} >>> a_dict {'color': 'blue', 'pet': 'dog', 'fruit': 'apple'} >>> a_dict {'color': 'blue', 'pet': 'dog', 'fruit': 'apple'} 28()Terkadang Anda perlu mengulangi kamus dengan Python dan menghapus itemnya secara berurutan. Untuk menyelesaikan tugas ini, Anda dapat menggunakan 29, yang akan menghapus dan mengembalikan pasangan nilai kunci arbitrer dari kamus. Di sisi lain, ketika Anda memanggil _29 pada kamus kosong, itu memunculkan 31Jika Anda benar-benar perlu mengulang secara destruktif melalui kamus dengan Python, maka ________21______29 dapat berguna. Ini sebuah contoh _7Di sini, Anda menggunakan _33 loop bukan 9 loop. Alasan untuk ini adalah tidak pernah aman untuk mengulang melalui kamus dengan Python jika Anda berpura-pura memodifikasinya dengan cara ini, yaitu, jika Anda menghapus atau menambahkan item ke dalamnyaDi dalam 33 loop, Anda mendefinisikan 36 blok untuk menangkap 31 yang diangkat oleh 38 saat 1 menjadi kosong. Di blok 36, Anda memproses kamus, menghapus item di setiap iterasi. Variabel _41 menyimpan referensi ke item yang berurutan dan memungkinkan Anda untuk melakukan beberapa tindakan dengannyaCatatan. Pada contoh kode sebelumnya, Anda menggunakan f-string Python untuk pemformatan string. Jika Anda ingin mendalami f-string lebih dalam, maka Anda dapat melihat f-Strings Python 3. Sintaks Pemformatan String yang Disempurnakan (Panduan) Jika Anda menjalankan skrip ini dari baris perintah, maka Anda akan mendapatkan hasil berikut _8Di sini _29 secara berurutan menghapus item 1. Perulangan terputus saat kamus menjadi kosong, dan 29 memunculkan pengecualian 31Menggunakan Beberapa Fungsi Bawaan PythonPython menyediakan beberapa fungsi bawaan yang berguna saat Anda bekerja dengan koleksi, seperti kamus. Fungsi-fungsi ini adalah semacam alat iterasi yang memberi Anda cara lain untuk mengulang melalui kamus dengan Python. Mari kita lihat beberapa di antaranya >>> # Python 3.6 and beyond >>> a_dict = {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} >>> a_dict {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} >>> a_dict {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} _7 _7 Python didefinisikan sebagai 48 dan mengembalikan iterator yang menerapkan 49 ke setiap item 91, menghasilkan hasil sesuai permintaan. Jadi, 7 dapat dilihat sebagai alat iterasi yang dapat Anda gunakan untuk mengulang melalui kamus dengan PythonMisalkan Anda memiliki kamus yang berisi harga sekumpulan produk, dan Anda perlu memberikan diskon untuk produk tersebut. Dalam hal ini, Anda dapat menentukan fungsi yang mengelola diskon, lalu menggunakannya sebagai argumen pertama untuk 7. Argumen kedua bisa jadi _53>>> ________22______9 Di sini, 7 diulang melalui item kamus ( 53) untuk menerapkan diskon 5% untuk setiap buah dengan menggunakan 56. Dalam hal ini, Anda perlu menggunakan _57 untuk menghasilkan kamus 58 dari iterator yang dikembalikan oleh 7Perhatikan bahwa _56 mengembalikan 6 dari bentuk 62, di mana 63 mewakili kunci dan 64 mewakili nilai baru>>> # Python 3.6 and beyond >>> a_dict = {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} >>> a_dict {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} >>> a_dict {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} _8 _8 adalah fungsi bawaan lain yang dapat Anda gunakan untuk beralih melalui kamus dengan Python dan memfilter beberapa itemnya. Fungsi ini didefinisikan sebagai _67 dan mengembalikan iterator dari elemen 91 yang 49 mengembalikan 12Misalkan Anda ingin mengetahui produk dengan harga lebih rendah dari 71. Anda perlu mendefinisikan fungsi untuk menentukan apakah harga memenuhi kondisi itu dan meneruskannya sebagai argumen pertama ke 8. Argumen kedua bisa jadi _73>>> 0Di sini, Anda mengulang melalui kunci 14 dengan 8. Kemudian _8 menerapkan 77 ke setiap kunci 14. Terakhir, Anda perlu menggunakan _79 untuk menghasilkan daftar produk dengan harga murah, karena 8 mengembalikan iterator, dan Anda benar-benar membutuhkan objek 23Hilangkan iklanMenggunakan >>> # Python 3.5 >>> a_dict = {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} >>> a_dict {'color': 'blue', 'pet': 'dog', 'fruit': 'apple'} >>> a_dict {'color': 'blue', 'pet': 'dog', 'fruit': 'apple'} _82 83 adalah modul berguna dari Python Standard Library yang menyediakan tipe data wadah khusus. Salah satu tipe data ini adalah _84, yang merupakan kelas mirip kamus untuk membuat satu tampilan dari beberapa pemetaan (seperti kamus). Dengan _84, Anda dapat mengelompokkan beberapa kamus bersama untuk membuat satu tampilan yang dapat diperbaruiSekarang, misalkan Anda memiliki dua (atau lebih) kamus, dan Anda perlu mengulanginya bersama sebagai satu. Untuk mencapai ini, Anda dapat membuat objek _84 dan menginisialisasinya dengan kamus Anda>>> 1Setelah mengimpor 84 dari 83, Anda perlu membuat objek 84 dengan kamus yang ingin Anda rangkai, dan kemudian Anda dapat dengan bebas beralih melalui objek yang dihasilkan seperti yang akan Anda lakukan dengan kamus biasa 84 objek juga menerapkan 4, 92, dan 0 seperti yang dilakukan kamus standar, sehingga Anda dapat menggunakan metode ini untuk beralih melalui objek mirip kamus yang dihasilkan oleh 84, seperti yang akan Anda lakukan dengan kamus biasa>>> 2Dalam hal ini, Anda telah memanggil _0 pada objek 84. Objek _84 berperilaku seolah-olah itu adalah kamus biasa, dan 0 mengembalikan objek tampilan kamus yang dapat diulang seperti biasaMenggunakan >>> # Python 3.5 >>> a_dict = {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} >>> a_dict {'color': 'blue', 'pet': 'dog', 'fruit': 'apple'} >>> a_dict {'color': 'blue', 'pet': 'dog', 'fruit': 'apple'} _99 _99 Python adalah modul yang menyediakan beberapa alat yang berguna untuk melakukan tugas iterasi. Mari kita lihat bagaimana Anda dapat menggunakan beberapa di antaranya untuk melakukan iterasi melalui kamus dengan PythonIterasi Siklik Dengan >>> # Python 3.5. New interactive session >>> a_dict = {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} >>> a_dict {'fruit': 'apple', 'pet': 'dog', 'color': 'blue'} >>> a_dict {'fruit': 'apple', 'pet': 'dog', 'color': 'blue'} _01Misalkan Anda ingin mengulang melalui kamus dengan Python, tetapi Anda perlu mengulanginya berulang kali dalam satu putaran. Untuk menyelesaikan tugas ini, Anda dapat menggunakan _02, yang membuat iterator mengembalikan elemen dari 91 dan menyimpan salinan masing-masing. Saat _91 habis, 01 mengembalikan elemen dari salinan yang disimpan. Ini dilakukan secara siklik, jadi terserah Anda untuk menghentikan siklusnyaDalam contoh berikut, Anda akan mengulangi item kamus tiga kali berturut-turut >>> 3Kode sebelumnya memungkinkan Anda untuk mengulangi 14 beberapa kali ( 07 dalam hal ini). Siklus ini bisa selama yang Anda butuhkan, tetapi Anda bertanggung jawab untuk menghentikannya. Kondisi _43 memutus siklus ketika 09 menghitung mundur ke nolIterasi Dirantai Dengan >>> # Python 3.5. New interactive session >>> a_dict = {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} >>> a_dict {'fruit': 'apple', 'pet': 'dog', 'color': 'blue'} >>> a_dict {'fruit': 'apple', 'pet': 'dog', 'color': 'blue'} 10 99 juga menyediakan 12, yang mendapatkan beberapa 13 sebagai argumen dan membuat iterator yang menghasilkan elemen dari iterable pertama hingga habis, kemudian iterasi pada iterable berikutnya dan seterusnya, sampai semuanya habisIni memungkinkan Anda untuk beralih melalui beberapa kamus dalam sebuah rantai, seperti yang Anda lakukan dengan 82>>> 4Dalam kode di atas, 10 mengembalikan iterable yang menggabungkan item dari 16 dan 17Bisa juga menggunakan _4 atau 3, tergantung kebutuhan, dengan syarat homogen. jika Anda menggunakan 4 untuk argumen ke 10, maka Anda perlu menggunakan 4 untuk sisanyaHilangkan iklanMenggunakan Operator Pembongkaran Kamus (>>> # Python 3.5. New interactive session >>> a_dict = {'color': 'blue', 'fruit': 'apple', 'pet': 'dog'} >>> a_dict {'fruit': 'apple', 'pet': 'dog', 'color': 'blue'} >>> a_dict {'fruit': 'apple', 'pet': 'dog', 'color': 'blue'} 23)Piton 3. 5 menghadirkan fitur baru dan menarik. PEP 448 - Generalisasi Pembongkaran Tambahan dapat membuat hidup Anda lebih mudah saat melakukan iterasi melalui beberapa kamus dengan Python. Mari kita lihat cara kerjanya dengan contoh singkat Misalkan Anda memiliki dua (atau lebih) kamus, dan Anda perlu mengulanginya bersama-sama, tanpa menggunakan 82 atau 25, seperti yang telah Anda lihat di bagian sebelumnya. Dalam hal ini, Anda dapat menggunakan operator pembongkaran kamus ( 23) untuk menggabungkan dua kamus menjadi yang baru dan kemudian mengulanginya>>> 5Operator pembongkaran kamus ( _23) benar-benar fitur yang luar biasa di Python. Ini memungkinkan Anda menggabungkan beberapa kamus menjadi kamus baru, seperti yang Anda lakukan pada contoh dengan 17 dan 16. Setelah Anda menggabungkan kamus dengan operator pembongkaran, Anda dapat mengulang melalui kamus baru seperti biasaPenting untuk dicatat bahwa jika kamus yang Anda coba gabungkan memiliki kunci berulang atau umum, maka nilai kamus paling kanan akan berlaku >>> 6Kunci _30 ada di kedua kamus. Setelah Anda menggabungkannya, nilai _16 untuk 30 ( 33) berlaku, karena 16 adalah kamus paling kananKesimpulanAnda sekarang mengetahui dasar-dasar cara melakukan iterasi melalui kamus dengan Python, serta beberapa teknik dan strategi yang lebih canggih Anda telah belajar
Anda memiliki alat dan pengetahuan yang Anda perlukan untuk memanfaatkan kamus dengan Python secara maksimal. Ini akan membantu Anda menjadi lebih efisien dan efektif dalam penggunaan iterasi kamus di masa mendatang Ikuti Kuis. Uji pengetahuan Anda dengan kuis “Iterasi Kamus Python” interaktif kami. Setelah selesai Anda akan menerima skor sehingga Anda dapat melacak kemajuan belajar Anda dari waktu ke waktu Ikuti Kuis » Tandai sebagai Selesai Tonton Sekarang Tutorial ini memiliki kursus video terkait yang dibuat oleh tim Real Python. Tonton bersama dengan tutorial tertulis untuk memperdalam pemahaman Anda. Iterasi Kamus Python. Kiat & Trik Lanjutan 🐍 Trik Python 💌 Dapatkan Trik Python singkat & manis yang dikirim ke kotak masuk Anda setiap beberapa hari. Tidak pernah ada spam. Berhenti berlangganan kapan saja. Dikuratori oleh tim Real Python Kirimi Saya Trik Python » Tentang Leodanis Pozo Ramos Leodanis adalah seorang insinyur industri yang menyukai Python dan pengembangan perangkat lunak. Dia adalah pengembang Python otodidak dengan pengalaman lebih dari 6 tahun. Dia adalah seorang penulis teknis yang rajin dengan semakin banyak artikel yang diterbitkan di Real Python dan situs lainnya » Lebih lanjut tentang LeodanisSetiap tutorial di Real Python dibuat oleh tim pengembang sehingga memenuhi standar kualitas tinggi kami. Anggota tim yang mengerjakan tutorial ini adalah Aldren Jim Joanna Master Keterampilan Python Dunia Nyata Dengan Akses Tanpa Batas ke Python Nyata Bergabunglah dengan kami dan dapatkan akses ke ribuan tutorial, kursus video langsung, dan komunitas pakar Pythonista Tingkatkan Keterampilan Python Anda » Guru Keterampilan Python Dunia Nyata Bergabunglah dengan kami dan dapatkan akses ke ribuan tutorial, kursus video langsung, dan komunitas ahli Pythonista Tingkatkan Keterampilan Python Anda » Bagaimana menurutmu? Nilai artikel ini Tweet Bagikan Bagikan EmailApa takeaway # 1 Anda atau hal favorit yang Anda pelajari? Kiat Berkomentar. Komentar yang paling berguna adalah yang ditulis dengan tujuan belajar dari atau membantu siswa lain. dan dapatkan jawaban atas pertanyaan umum di portal dukungan kami Bagaimana Anda membuat kamus dengan Python untuk loop?Kamus Python dengan For Loop . Untuk mengulangi semua item dict, Anda memerlukan buah. item() Untuk membuat daftar, ulangi setiap kunci sebanyak N kali. [kunci]*N Karena nilai dict menunjukkan berapa kali pengulangan, lakukan. [kunci]*nilai Bagaimana Anda membuat kamus bersarang di Python untuk loop?Untuk membuat kamus bersarang, cukup berikan kunci kamus. pasangan nilai sebagai argumen kata kunci untuk konstruktor dict() . Anda dapat menggunakan fungsi dict() bersama dengan fungsi zip(), untuk menggabungkan daftar kunci dan nilai terpisah yang diperoleh secara dinamis saat runtime.
Bagaimana Anda melintasi kamus dalam satu lingkaran dengan Python?Ada beberapa cara untuk mengulangi kamus dengan Python. . Akses kunci menggunakan build. kunci() Akses kunci tanpa menggunakan kunci() Ulangi semua nilai menggunakan. nilai() Ulangi semua kunci, dan pasangan nilai menggunakan item() Akses kunci dan nilai tanpa menggunakan item() Mencetak item dalam Nilai-Kunci secara berpasangan Bagaimana cara menambahkan kunci dan nilai ke kamus dengan Python menggunakan for loop?Dengan Python, untuk mengulangi kamus ( dict ) dengan loop for, gunakan metode keys() , values() , items(). You can also get a list of all keys and values in the dictionary with those methods and list() . Use the following dictionary as an example. You can iterate keys by using the dictionary object directly in a for loop. |