Kamus Python ialah struktur data pelbagai guna yang membolehkan anda menyimpan pasangan nilai kunci. Kadangkala, anda mungkin perlu mengubah suai kekunci dalam kamus, seperti menambah awalan pada setiap kunci. Ini berguna apabila anda ingin membezakan atau mengklasifikasikan kunci tertentu. Dalam catatan blog ini, kami akan meneroka cara praktikal untuk memberi awalan dengan cekap setiap nama kunci dalam kamus Python.
Dalam Python, kamus ialah koleksi item yang tidak tersusun, di mana setiap item ialah pasangan nilai kunci. Kunci dalam kamus adalah unik dan ia menyediakan cara yang mudah untuk mengakses nilai yang sepadan. Walaupun kamus adalah fleksibel dalam menyimpan dan mendapatkan semula data, dalam beberapa kes anda mungkin perlu menukar kunci kamus untuk memenuhi keperluan anda.
Menambah awalan sebelum setiap nama kunci dalam kamus boleh membantu anda mencapai organisasi dan struktur yang lebih baik dalam data anda. Sebagai contoh, jika anda mempunyai kamus yang mewakili maklumat pelajar, anda mungkin ingin menambah awalan untuk membezakan antara kunci yang berkaitan dengan butiran peribadi (cth. 'nama', 'umur') dan kunci yang berkaitan dengan maklumat akademik (cth. 'subjek', ' gred').
Untuk melaksanakan tugas ini, kami akan menggunakan kuasa potongan kamus, yang merupakan cara yang kemas untuk mencipta kamus baharu dengan mengubah kamus sedia ada. Dengan mengulangi kekunci kamus dan menggunakan pengubahsuaian yang diperlukan, kami boleh mencipta kamus baharu dengan nama kunci yang diubah suai dengan cekap.
Mari kita mulakan dengan mentakrifkan kamus sampel dengan beberapa pasangan nilai kunci Untuk tujuan demonstrasi, kami akan menggunakan kamus yang mewakili nama pelajar dan umur mereka yang sepadan.
student_dict = { 'John': 18, 'Alice': 20, 'Bob': 19, 'Eve': 21 }
Dalam kod di atas, student_dict ialah kamus asal yang ingin kami ubah suai, kami ingin menambah awalan pada setiap kunci.
Sekarang, mari kita ulangi kekunci student_dict dan buat kamus baharu dengan nama kunci yang diubah suai. Kami akan menggunakan terbitan kamus untuk mencapai matlamat ini.
prefix = 'prefix_' # The prefix to add to each key name prefixed_dict = {prefix + key: value for key, value in student_dict.items()}
Dalam kod di atas, awalan ialah rentetan awalan yang ingin kami tambahkan pada setiap nama kunci. Pemahaman kamus menggunakan kaedah item() untuk mengulangi pasangan nilai kunci student_dict, dan untuk setiap pasangan nilai kunci, ia mencipta kunci baharu dengan menggabungkan awalan dengan kunci sedia ada. Nilai yang sepadan kekal tidak berubah.
Akhir sekali, mari kita cetak kamus yang diubah suai untuk mengesahkan bahawa setiap nama kunci telah diberi awalan.
print(prefixed_dict)
Output akan menunjukkan kamus yang diubah suai dengan nama kunci awalan−
{ 'prefix_John': 18, 'prefix_Alice': 20, 'prefix_Bob': 19, 'prefix_Eve': 21 }
Kamus baharu prefixed_dict mengandungi nilai yang sama seperti student_dict asal, tetapi kekunci diawali dengan 'prefix_'.
Apabila menambahkan awalan pada setiap nama kunci, adalah penting untuk mempertimbangkan kemungkinan perlanggaran kunci berlaku apabila dua atau lebih kunci dalam kamus menghasilkan nama kunci yang diubah suai yang sama selepas menambah awalan ini boleh menyebabkan kehilangan data kunci kamus mestilah unik.
Untuk mengendalikan konflik kritikal, anda boleh memilih daripada beberapa strategi−
Anda boleh memilih untuk melangkau kunci sepenuhnya dan tidak memasukkannya ke dalam kamus yang diubah suai. Ini boleh dicapai dengan menambahkan syarat if pada pemahaman kamus untuk menyemak sama ada kunci yang diubah suai sudah wujud dalam kamus.
Jika anda ingin mengekalkan semua data, anda boleh menambahkan pengecam unik pada kunci yang diubah suai untuk memastikan keunikan. Pengecam boleh menjadi nombor atau sebarang maklumat membezakan lain yang menghalang konflik utama.
Daripada melangkau kunci bercanggah, anda boleh memilih untuk menggantikannya dengan kunci pengubah suai baharu. Kaedah ini berguna jika anda ingin mengemas kini nilai yang dikaitkan dengan kunci bercanggah.
Pertimbangkan kes penggunaan khusus anda dan pilih strategi yang sesuai untuk mengendalikan konflik utama yang timbul apabila memberi awalan setiap nama kunci dalam kamus.
Setakat ini kami telah mencipta kamus baharu dengan nama kunci yang diubah suai. Walau bagaimanapun, mungkin terdapat situasi di mana anda ingin mengubah suai kamus asal itu sendiri daripada mencipta yang baharu. Mengubah suai kamus di tempat boleh menjimatkan lebih banyak ingatan, terutamanya untuk kamus besar.
Untuk mengubah suai nama kunci secara langsung dalam kamus, anda boleh mengulangi kekunci kamus, mencipta pasangan nilai kunci baharu dengan nama kunci yang diubah suai dan memadamkan kekunci lama. Ini adalah contoh -
prefix = 'pre_' for key in list(original_dict.keys()): modified_key = prefix + key original_dict[modified_key] = original_dict.pop(key)
Dalam kod ini, kami mengulangi senarai kunci yang diperoleh daripada original_dict.keys(). Kami membuat modified_key dengan menambahkan awalan pada setiap kunci dan memberikannya nilai yang sepadan daripada pasangan nilai kunci asal menggunakan original_dict.pop(key). Akhir sekali, kami memadamkan kunci lama dengan memanggil original_dict.pop(key).
Ingat bahawa mengubah suai kamus asal secara langsung akan menukar rujukan sedia ada kepada kamus tersebut. Sebelum memilih kaedah ini, pastikan ia memenuhi keperluan anda.
Kami belajar cara menambah awalan pada setiap nama kunci dalam kamus Python Kami mengikuti pendekatan langkah demi langkah, bermula dengan mentakrifkan kamus asal dan kemudian mencipta kamus baharu dengan nama kunci yang diubah suai menggunakan pemahaman kamus dan gabungan rentetan.
Kami membincangkan kepentingan mengendalikan konflik utama dan menyediakan strategi untuk mengendalikannya, seperti melangkau kunci bercanggah, menambahkan pengecam unik atau menggantikan kunci bercanggah. Selain itu, kami memperkenalkan konsep mengubah suai nama kunci di tempat untuk menjimatkan memori, di mana kami mengulangi kekunci, mencipta pasangan nilai kunci baharu dan memadamkan kekunci lama.
Dengan menambahkan awalan sebelum setiap nama kunci dalam kamus, anda boleh meningkatkan organisasi, klasifikasi dan pembezaan kunci mengikut keperluan khusus anda. Sama ada anda memilih untuk mencipta kamus baharu atau mengubah suai kamus asal di tempat, teknik yang diterangkan dalam catatan blog ini memberi anda kelonggaran untuk memanipulasi kunci kamus dengan cekap.
Atas ialah kandungan terperinci Tambahkan awalan pada setiap nama kata kunci dalam kamus Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!