Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mencipta Defaultdicts Pelbagai Peringkat dengan Kedalaman Pembolehubah?

Bagaimana untuk Mencipta Defaultdicts Pelbagai Peringkat dengan Kedalaman Pembolehubah?

Patricia Arquette
Patricia Arquetteasal
2024-10-17 11:04:301045semak imbas

How to Create Multi-Level Defaultdicts with Variable Depth?

Mencipta Defaultdicts Berbilang Aras dengan Kedalaman Boleh Ubah

Apabila bekerja dengan data bersarang, mungkin sukar untuk mencipta kamus berbilang peringkat dengan kedalaman yang berbeza-beza. Soalan ini menangani masalah ini dengan tepat, di mana senarai besar dengan kekunci hierarki perlu ditukar kepada kamus bersarang dengan kedalaman yang tidak diketahui.

Penyelesaian yang disediakan menggunakan kuasa lalai Python dan fungsi lambda untuk mencipta bersarang rekursif kamus atas permintaan. Fungsi nested_dict = lambda: defaultdict(nested_dict) mengembalikan kamus bersarang yang lalai kepada kamus bersarang lain jika kunci tidak ditemui. Ini membolehkan penciptaan dinamik lapisan bersarang seperti yang diperlukan.

Dalam contoh yang disediakan, pembolehubah sarang memegang rujukan kepada kamus bersarang rekursif. Sarang tugasan seterusnya[0][1][2][3][4][5] = 6 mencipta kamus dengan kekunci bersarang mewakili [0, 1, 2, 3, 4, 5] dan memberikan nilai 6. Fungsi lambda pada asasnya mencipta hierarki lalai yang tidak terhingga, membolehkan akses mudah dan manipulasi data bersarang.

Atas ialah kandungan terperinci Bagaimana untuk Mencipta Defaultdicts Pelbagai Peringkat dengan Kedalaman Pembolehubah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn