Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Menetapkan Nilai Senarai Secara Dinamik kepada Pembolehubah dalam Gelung Python?

Bagaimanakah Saya Boleh Menetapkan Nilai Senarai Secara Dinamik kepada Pembolehubah dalam Gelung Python?

Barbara Streisand
Barbara Streisandasal
2024-12-14 08:34:13983semak imbas

How Can I Dynamically Assign List Values to Variables in Python Loops?

Penjanaan Pembolehubah dalam Gelung Python

Apabila bekerja dengan senarai, mungkin wajar untuk menjana nama pembolehubah dan menetapkan nilai daripada senarai dalam gelung, mengelakkan penugasan manual. Sebagai contoh, diberikan senarai:

prices = [5, 12, 45]

Kami berhasrat untuk mencipta pembolehubah berikut:

price1 = 5
price2 = 12
price3 = 45

Terdapat beberapa cara untuk mendekati tugas ini.

Pembolehubah Dinamik Penciptaan

Walaupun tidak disyorkan kerana potensinya untuk mencipta pembolehubah global yang tidak diingini, adalah mungkin untuk menetapkan nilai kepada pembolehubah secara dinamik menggunakan fungsi globals() atau locals(). Contohnya:

# Assign to global namespace
globals()['price1'] = prices[0]
globals()['price2'] = prices[1]
globals()['price3'] = prices[2]

print(price1)  # Outputs 5

Walau bagaimanapun, kaedah ini harus digunakan dengan berhati-hati, kerana ia boleh menyebabkan kod yang sukar diselenggara dan nyahpepijat.

Tugasan Kamus

Pendekatan yang lebih baik ialah mencipta kamus dan memberikan nilai kepadanya. Ini menyediakan cara yang lebih terkawal dan berstruktur untuk mengurus pembolehubah:

prices_dict = {}
prices_dict['price1'] = prices[0]
prices_dict['price2'] = prices[1]
prices_dict['price3'] = prices[2]

print(prices_dict['price1'])  # Outputs 5

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menetapkan Nilai Senarai Secara Dinamik kepada Pembolehubah dalam Gelung Python?. 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