Hampir semua jenis nilai dapat digunakan sebagai kunci kamus di Python. Anda bahkan dapat menggunakan objek bawaan seperti tipe dan fungsi. Namun, ada beberapa batasan yang harus dipatuhi oleh kunci kamus
Pertama, kunci yang diberikan hanya dapat muncul sekali dalam kamus. Kunci duplikat tidak diperbolehkan. Kamus memetakan setiap kunci ke nilai yang sesuai, jadi tidak masuk akal untuk memetakan kunci tertentu lebih dari satu kali. Jika Anda menentukan kunci untuk kedua kalinya selama pembuatan kamus awal, kemunculan kedua akan menggantikan yang pertama
Kedua, kunci kamus harus dari jenis yang tidak dapat diubah. Misalnya, Anda dapat menggunakan integer, float, string, atau Boolean sebagai kunci kamus. Namun, baik daftar maupun kamus lain tidak dapat berfungsi sebagai kunci kamus, karena daftar dan kamus dapat diubah. Sebaliknya, nilai dapat berupa jenis apa saja dan dapat digunakan lebih dari satu kali
Joshua Dougas di
Saya terkejut bahwa pesan kesalahan untuk kunci daftar tidak menyebutkan perubahan sama sekali
Saya bermain-main dan menemukan bahwa objek yang dapat berubah benar-benar berfungsi sebagai kunci, selama objek tersebut dapat di-hash. Kita dapat membuat daftar turunan yang hashable dengan mengimplementasikan metode hash() menggunakan beberapa skema arbitrer
Saya melakukan ini di bawah dan menemukan bahwa objek yang dapat berubah sebenarnya berfungsi sebagai kunci kamus, hanya saja menggunakan kunci yang dapat berubah dapat menyebabkan hasil yang tidak terduga
Misalnya jika Anda menambahkan item menggunakan kunci yang dapat diubah dan kemudian mengubah kunci secara permanen, maka Anda berisiko 'kehilangan' nilai terkait. Saya yakin ada banyak peringatan lain, seperti tabrakan, juga
Anda dapat mengonversi daftar Python ke kamus menggunakan pemahaman kamus, dict. fromkeys(), atau metode zip(). Ketiga metode membuat kamus baru. Mereka tidak mengubah daftar yang ada
Daftar dan kamus Python adalah dua struktur yang digunakan untuk menyimpan data. Tetapi bagaimana jika Anda ingin mengonversi daftar menjadi kamus? . Ini hanya mungkin dalam kamus
Temukan Kecocokan Bootcamp Anda
- Career Karma mencocokkan Anda dengan bootcamp berteknologi tinggi
- Akses beasiswa eksklusif dan kursus persiapan
Nama depan
nama keluarga
Surel
Nomor telepon
Dengan melanjutkan, Anda menyetujui Ketentuan Layanan dan Kebijakan Privasi kami, dan Anda setuju untuk menerima penawaran dan peluang dari Career Karma melalui telepon, pesan teks, dan email
Ada beberapa teknik dan fungsi bawaan yang dapat Anda gunakan di Python untuk mengubah daftar menjadi kamus. Tutorial pemrograman ini akan membahas, dengan mengacu pada contoh, cara mengonversi daftar menjadi kamus dengan Python
Daftar dan Kamus Python
Daftar dan kamus adalah contoh koleksi Python. Mereka memungkinkan Anda untuk menyimpan beberapa nilai serupa secara bersamaan dalam satu struktur data
Struktur data daftar memungkinkan Anda untuk menyimpan data dalam urutan tertentu. Berikut adalah contoh daftar Python
takeout_prices = [2.50, 2.75, 4.50, 5.00]
Daftar kami yang disebut takeout_prices berisi empat nilai
Kamus, di sisi lain, tidak diurutkan, dan tidak dapat menyimpan beberapa nilai duplikat
Berikut adalah contoh kamus Python
takeout_prices = { 'single_chips': 2.50, 'large_chips': 2.75, 'single_fish': 4.50, 'large_fish': 5.00 }_
Kamus berguna jika Anda ingin mengaitkan label dengan setiap nilai. Daftar lebih baik jika Anda menyimpan data serupa, seperti daftar harga atau nama, di mana Anda tidak dapat memberi label pada setiap nilai
Daftar Konversi Python ke Kamus
Anda dapat mengonversi daftar Python ke kamus menggunakan dict. metode fromkeys(), pemahaman kamus, atau metode zip(). Metode zip() berguna jika Anda ingin menggabungkan dua daftar ke dalam kamus
Mari kita rangkum metode ini dengan cepat
- dikt. fromkeys(). Digunakan untuk membuat kamus dari daftar. Secara opsional, Anda dapat menetapkan nilai default untuk semua kunci. Anda tidak dapat menetapkan nilai individual untuk setiap item dalam kamus
- Pemahaman kamus. Membuat kamus baru dari daftar yang ada. Anda dapat menentukan nilai yang berbeda untuk setiap kunci dalam kamus. Pemahaman kamus mirip dengan pemahaman daftar Python dalam struktur
- zip(). Mengonversi dua atau lebih daftar menjadi daftar tupel. Anda dapat menggunakan metode dict() untuk mengonversi daftar tupel menjadi kamus
» LAINNYA. Python TypeError. objek 'dict' bukan Solusi yang bisa dipanggil
Kami akan menggunakan masing-masing dari tiga metode di atas untuk mendemonstrasikan bagaimana kami dapat mengonversi daftar menjadi kamus
Daftar Konversi Python ke Kamus. dikt. fromkeys()
Katakanlah kita memiliki daftar buah yang ingin kita ubah menjadi kamus. Nilai yang ditetapkan untuk setiap buah harus dalam stok
fruits = ["Apple", "Pear", "Peach", "Banana"]
Kita bisa membuat kamus ini menggunakan dict. fromkeys() metode. Metode ini menerima daftar kunci yang ingin Anda ubah menjadi kamus. Secara opsional, Anda dapat menentukan nilai yang ingin Anda tetapkan untuk setiap kunci
Anda hanya dapat menentukan satu nilai untuk ditetapkan ke setiap kunci. Anda tidak dapat mengatakan bahwa satu kunci harus memiliki satu nilai dan kunci lain harus memiliki nilai yang berbeda
Mari ubah daftar buah kita menjadi kamus
fruits = ["Apple", "Pear", "Peach", "Banana"] fruit_dictionary = dict.fromkeys(fruits, "In stock") print(fruit_dictionary)
Kode kami mengembalikan objek dari daftar ini dalam objek kamus
{'Apple': 'In stock', 'Pear': 'In stock', 'Peach': 'In stock', 'Banana': 'In stock'}_
Pertama-tama kita mendeklarasikan variabel Python yang disebut buah-buahan yang menyimpan nama kunci yang ingin kita gunakan di kamus kita
Kami menggunakan dict. fromkeys() untuk membuat kamus yang menggunakan nama kunci yang kami simpan di array buah-buahan. Metode ini memberikan nilai dari setiap kunci menjadi In stock. Terakhir, kami mencetak kamus baru ke konsol
Jika kami tidak menentukan nilai Stok dalam kode kami, nilai default untuk kunci dalam kamus kami adalah Tidak ada
Konversi Daftar ke Kamus Python. Pemahaman Kamus
Kita juga bisa menggunakan teknik yang disebut pemahaman kamus untuk mengubah daftar Python menjadi kamus menggunakan nilai yang sama
» LAINNYA. Nilai Absolut Python. Panduan Langkah Demi Langkah
Pemahaman kamus mirip dengan pemahaman daftar karena kedua metode membuat nilai baru dari tipe datanya masing-masing. Pemahaman kamus menggunakan tanda kurung siku ({}) sedangkan pemahaman daftar menggunakan tanda kurung siku ([])
Mari ubah daftar buah kita menjadi kamus menggunakan pemahaman kamus
fruits = ["Apple", "Pear", "Peach", "Banana"] fruit_dictionary = { fruit : "In stock" for fruit in fruits } print(fruit_dictionary)
Kode kami kembali
{'Apple': 'In stock', 'Pear': 'In stock', 'Peach': 'In stock', 'Banana': 'In stock'}_
Pertama, kami mendeklarasikan daftar bernama buah yang menyimpan nama yang ingin kami pindahkan ke kamus
Kemudian, kami menggunakan pemahaman kamus untuk menelusuri setiap item dalam daftar buah. Kami menambahkan item ke kamus baru kami untuk setiap buah dalam daftar kami. Nilai yang kami tetapkan untuk setiap buah adalah In stock. Akhirnya, kami mencetak kamus baru kami ke konsol
Daftar Konversi Python ke Kamus. zip()
Dalam contoh terakhir kami, kami telah mengonversi satu daftar menjadi kamus dan menetapkan nilai default untuk setiap item dalam kamus. Namun, dimungkinkan untuk mengonversi dua daftar menjadi kamus
Karma Karma memasuki hidup saya saat saya sangat membutuhkannya dan dengan cepat membantu saya mencocokkan bootcamp. Dua bulan setelah lulus, saya menemukan pekerjaan impian saya yang sesuai dengan nilai dan tujuan hidup saya. "
Venus, Insinyur Perangkat Lunak di Rockbot
Find Your Bootcamp MatchUntuk melakukannya, kita dapat menggunakan fungsi Python zip(). Fungsi ini memungkinkan kita menggabungkan dua daftar menjadi satu. Kita dapat menggunakan satu daftar sebagai kunci kamus dan yang lainnya sebagai nilai
Misalkan kita memiliki dua daftar. satu berisi daftar buah-buahan, dan yang lainnya berisi harga satu potong buah. Kami ingin membuat kamus tunggal yang menyimpan nama buah, beserta harganya. Kita dapat menggunakan kode berikut untuk menyelesaikan tugas ini
fruits = ["Apple", "Pear", "Peach", "Banana"] prices = [0.35, 0.40, 0.40, 0.28] fruit_dictionary = dict(zip(fruits, prices)) print(fruit_dictionary)
Kode kami kembali
{'Apple': 0.35, 'Pear': 0.4, 'Peach': 0.4, 'Banana': 0.28}_
Pertama, kami telah menentukan dua daftar. daftar buah-buahan, dan daftar harga. Kemudian, kami telah menggunakan fungsi zip() untuk menggabungkan dua daftar kami menjadi satu. Fungsi zip() mengembalikan daftar gabungan tupel. Karena kami menginginkan kamus, kami telah menggunakan dict() untuk mengubah tupel kami menjadi kamus
» LAINNYA. Daftar Istilah Python. Panduan Pemula
Selanjutnya, kami mencetak isi kamus baru kami ke konsol
Kesimpulan
Untuk mengonversi daftar menjadi kamus menggunakan nilai yang sama, Anda dapat menggunakan dict. fromkeys() metode. Untuk mengonversi dua daftar menjadi satu kamus, Anda dapat menggunakan fungsi Python zip(). Pemahaman kamus memungkinkan Anda membuat kamus baru berdasarkan nilai daftar
Dalam tutorial ini, kami menggunakan contoh untuk mendemonstrasikan cara menggunakan tiga pendekatan untuk mengubah daftar menjadi kamus dengan Python. Sekarang Anda siap untuk mulai mengonversi daftar Python ke kamus seperti programmer profesional
Apakah Anda tertarik untuk mempelajari lebih lanjut tentang Python? . Panduan ini berisi daftar kursus online, buku, dan sumber belajar yang dapat Anda gunakan untuk membangun pengetahuan Anda tentang pengkodean dengan Python
Tentang kami. Karma Karir adalah platform yang dirancang untuk membantu pencari kerja menemukan, meneliti, dan terhubung dengan program pelatihan kerja untuk memajukan karier mereka. Pelajari tentang publikasi CK