Kamus Lanjutan Python

Kamus Lanjutan Python

Perkenalan

Anda sudah berkenalan dengan kamus, tetapi sama seperti struktur data lainnya yang didukung Python, ada metode dan cara yang lebih kuat untuk menggunakannya. Tidak ada banyak metode untuk bekerja dengan kamus seperti yang ada untuk daftar, tapi itu karena kamus tidak membutuhkannya. Ditambah lagi, banyak dari yang ada, bekerja untuk memecah kamus ke dalam daftar dan tupel untuk membuatnya lebih mudah dikelola. Jadi, metode daftar tersebut dapat digunakan bersama dengan yang kamus untuk membuat mesin yang efisien untuk menangani data.

Metode Kamus

Item, kunci, dan nilai

Metode ini bekerja untuk memecah kamus menjadi struktur data lain untuk membuat bekerja dengan mereka jauh lebih mudah dikelola. Melakukannya juga memberikan akses ke metode struktur data tersebut. Melalui kombinasi metode dan loop ini, Anda dapat mengakses dan memanipulasi data dengan mudah.

Metode pertama adalah item (). Itu memecah setiap entri dalam kamus menjadi tuple dan menyimpan semuanya dalam daftar.

distro_install_command = 'debian': 'apt-get', 'ubuntu': 'apt-get', 'fedora': 'dnf', 'centos': 'yum', 'opensuse': 'zypper', 'arch' : 'Pacman', 'gentoo': 'Emerge' distro_install_list = distro_install_command.item () cetak (distro_install_list) cetak (distro_install_list [3] [1]) 

Semuanya terurai persis seperti yang Anda harapkan.

Metode berikutnya memberi Anda akses ke kunci di kamus dalam bentuk daftar.

distro_install_command = 'debian': 'apt-get', 'ubuntu': 'apt-get', 'fedora': 'dnf', 'centos': 'yum', 'opensuse': 'zypper', 'arch' : 'pacman', 'gentoo': 'emerge' distro_names = distro_install_command.Keys () untuk distro di distro_names: cetak (distro) 

Yang baru distro_names Daftar berperilaku sama seperti yang lain dan dapat dilingkarkan melalui hal yang sama.

Metode terakhir adalah sama dengan yang sebelumnya, tetapi alih -alih mengambil kunci, yang satu ini mendapatkan nilainya. Itu harus cukup jelas sekarang bahwa itu disebut nilai ().

distro_install_command = 'debian': 'apt-get', 'ubuntu': 'apt-get', 'fedora': 'dnf', 'centos': 'yum', 'opensuse': 'zypper', 'arch' : 'pacman', 'gentoo': 'emerge' distro_commands = distro_install_command.values ​​() untuk perintah dalam distro_commands: print (command) 

Nilai kamus dalam string

Ini bukan metode atau apa pun yang terlalu rumit, tetapi situasi akan muncul ketika Anda ingin memasukkan nilai langsung dari hash ke dalam string, dan itu tidak berfungsi seperti yang Anda pikirkan. Itu % Operator benar -benar melihat kamus secara keseluruhan dan menarik nilai dari kunci di dalamnya untuk mengganti mereka menjadi string.

book_info = 'title': 'Learning Python', 'halaman': 342, 'pub_date': 'November 2016', 'Bab': 14, print ("Buku itu disebut %(judul) S, dan itu adalah dirilis pada %(pub_date) s. Itu adalah %(halaman) halaman panjang dengan %(bab) D bab." % book_info) 

Seperti yang Anda lihat, itu hanya cara yang lebih nyaman untuk menangani memasukkan nilai -nilai dari kamus. Menggunakan metode reguler bisa menjadi sangat berulang dan rumit, bahkan dengan hanya beberapa entri.

Iterasi lebih dari kamus

Iterasi atas kamus tidak sesederhana yang mungkin Anda pikirkan. Karena kamus beroperasi menggunakan pasangan nilai, cara berbasis numerik untuk mengulangi daftar tidak cukup berhasil. Mencobanya, dan lihat apa yang terjadi.

distro_install_command = 'debian': 'apt-get', 'ubuntu': 'apt-get', 'fedora': 'dnf', 'centos': 'yum', 'opensuse': 'zypper', 'arch' : 'Pacman', 'gentoo': 'Emerge' untuk distro di distro_install_command: print (distro) 

Jadi apa yang terjadi? Itu semacam berhasil, tetapi satu -satunya hal yang dikeluarkan adalah kuncinya. Anda mungkin bisa menebak satu cara untuk mendapatkan nilainya juga, dan itu akan berhasil, tetapi tidak semua solusi yang elegan.

distro_install_command = 'debian': 'apt-get', 'ubuntu': 'apt-get', 'fedora': 'dnf', 'centos': 'yum', 'opensuse': 'zypper', 'arch' : 'pacman', 'gentoo': 'muncul' untuk distro di distro_install_command: print ("distro adalah %s, dan menggunakan perintah %s." % (distro, distro_install_command [distro])) 

Ada cara yang lebih baik untuk menangani ini, dan itu memanfaatkan item () metode. Jika Anda ingat dari sebelumnya, item () Metode membuat daftar tupel yang berisi kunci dan nilai dari kamus.

distro_install_command = 'debian': 'apt-get', 'ubuntu': 'apt-get', 'fedora': 'dnf', 'centos': 'yum', 'opensuse': 'zypper', 'arch' : 'pacman', 'gentoo': 'muncul' untuk distro, perintah di distro_install_command.item (): cetak ("distro adalah %s, dan menggunakan perintah %s." % (distro, perintah)) 

Yang sepertinya terbang di hadapan sesuatu yang Anda pelajari sebelumnya, bukan? Bagaimana untuk loop membuat dua variabel sementara untuk mengakses elemen dalam daftar dua dimensi? Nah, ini sebenarnya fungsionalitas yang dibangun menjadi Python hanya untuk hal semacam ini. Sayangnya, itu tidak selalu bekerja dengan baik dengan daftar multidimensi karena mengharuskan setiap daftar dalam daftar multidimensi memiliki ukuran yang sama. Dengan kamus, Anda tahu bahwa Anda akan selalu bekerja dengan sepasang nilai, tetapi daftar multidimensi dapat berisi daftar ukuran apa pun. Itulah mengapa ini benar -benar hanya solusi yang bagus saat bekerja dengan kamus.

Kesimpulan

Dengan menggunakan metode dan iterasi, Anda dapat memecah kamus menjadi bentuk yang jauh lebih mudah untuk dikerjakan. Dengan menggabungkan fungsi kamus dengan fungsionalitas yang tersedia untuk daftar dan tupel, Anda mendapatkan alat yang sangat kuat untuk menangani data.

Daftar isi

  1. Panduan Pendahuluan dan Pemasangan Python
  2. File python dan penerjemah
  3. Bereksperimen dengan angka dan teks dalam python
  4. Variabel Python
  5. Bekerja dengan variabel angka dalam python
  6. Dasar -dasar string Python
  7. String Python tingkat lanjut
  8. Komentar Python
  9. Daftar Python
  10. Metode Daftar Python
  11. Daftar Multidimensi Python
  12. Python Tuples
  13. Operator Python Boolean
  14. Pernyataan Python If
  15. Python saat loop
  16. Python untuk loop
  17. Kamus Python
  18. Kamus Lanjutan Python
  19. Fungsi Python

Tutorial Linux Terkait:

  • Menguasai loop skrip bash
  • Pengantar Otomatisasi Linux, Alat dan Teknik
  • Loop bersarang dalam skrip bash
  • Bagaimana bekerja dengan WooCommerce Rest API dengan Python
  • Menangani input pengguna dalam skrip bash
  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Manipulasi data besar untuk kesenangan dan keuntungan bagian 1
  • Mint 20: Lebih baik dari Ubuntu dan Microsoft Windows?
  • Membandingkan Linux Apache Prefork vs Pekerja MPM
  • Pengantar YAML dengan contoh