Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Membuat Kamus Python Secara Automatik daripada Pembolehubah Sedia Ada?

Bagaimanakah Saya Boleh Membuat Kamus Python Secara Automatik daripada Pembolehubah Sedia Ada?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-30 14:16:12616semak imbas

How Can I Automatically Create a Python Dictionary from Existing Variables?

Mencipta Kamus daripada Pembolehubah Secara Automatik

Python menyediakan keupayaan introspeksi yang kuat, tetapi mengakses secara langsung nama pembolehubah sebagai rentetan mungkin tidak sepenuhnya terus terang. Walau bagaimanapun, adalah mungkin untuk mencapai sesuatu yang serupa melalui pendekatan kreatif.

Salah satu cara untuk menukar koleksi pembolehubah menjadi kamus adalah dengan menggunakan fungsi locals(). Fungsi ini mengembalikan kamus yang mengandungi pembolehubah tempatan skop semasa. Seperti yang ditunjukkan di bawah, kita boleh menggunakan ini untuk membina kamus:

bar = True
foo = False

# Get local variables as a dictionary
local_vars = locals()

# Create a dictionary from the local variables
my_dict = {k: v for k, v in local_vars.items() if v is bar or v is foo}

print(my_dict)

Ini akan menghasilkan output berikut:

{'foo': False, 'bar': True}

Sila ambil perhatian bahawa walaupun pendekatan ini berfungsi, ia biasanya tidak disyorkan untuk banyak bergantung pada manipulasi rentetan nama pembolehubah. Sebaliknya, adalah lebih baik untuk menstruktur kod anda dengan cara yang menghapuskan keperluan untuk teknik sedemikian.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membuat Kamus Python Secara Automatik daripada Pembolehubah Sedia Ada?. 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