Rumah > Artikel > pembangunan bahagian belakang > Dalam Python, fungsi globals() mengembalikan kamus semua pembolehubah dan fungsi yang ditakrifkan dalam skop global semasa.
Dalam Python, setiap atur cara mempunyai jadual simbol yang mengandungi maklumat tentang nama (pembolehubah, fungsi dan kelas) yang ditakrifkan dalam atur cara. Fungsi global() membolehkan kami mengakses dan memanipulasi jadual simbol global, memberikan maklumat berharga tentang pembolehubah global yang sedang dalam program. Dalam artikel ini, kita akan mempelajari cara fungsi globals() ini berfungsi dan perkara yang boleh kita lakukan dengan fungsi ini dalam Python.
Ikhtisar fungsiDalam Python, setiap atur cara mempunyai jadual simbol, yang mengandungi maklumat tentang nama (pembolehubah, fungsi, kelas, dll.) yang ditakrifkan dalam atur cara. Jadual simbol diwakili oleh kamus, di mana nama adalah kunci dan nilai yang berkaitan mewakili nilai atau rujukan semasanya.
Fungsiglobals() mengembalikan kamus yang mewakili jadual simbol global semasa. Ia menyediakan akses kepada semua pembolehubah global dalam skop semasa dan nilai sepadannya. Dengan memeriksa kamus ini, kami boleh mengambil semula, mengubah suai atau memadam pembolehubah global secara pemrograman.
globals()
Di sini, fungsi globals() tidak menerima sebarang parameter, ia hanya mengembalikan kamus yang mewakili jadual simbol global.
Mendapatkan semula pembolehubah global dalam Python boleh dilakukan menggunakan fungsi globals(), yang mengembalikan kamus yang mewakili jadual simbol global semasa. Dengan mengakses kamus ini dan mengulangi itemnya, anda boleh mendapatkan semula nama dan nilai semua pembolehubah global dalam skop semasa.
Dalam contoh di bawah, kami mentakrifkan tiga pembolehubah global: x, y dan z. Kami juga mentakrifkan fungsi print_globals() yang memanggil fungsi globals() untuk mendapatkan semula jadual simbol global. Dengan mengulangi item kamus yang terhasil, kami mencetak nama dan nilai semua pembolehubah global. Tambahan pula, kita dapat melihat bahawa fungsi print_globals() itu sendiri juga wujud dalam jadual simbol global.
x = 10 y = 5 z = "Hello, World!" def print_globals(): global_vars = globals() for name, value in global_vars.items(): print(f"{name}: {value}") print_globals()
__name__: __main__ __doc__: None __package__: None __loader__: <_frozen_importlib_external.SourceFileLoader object at 0x7f9b30a74a30> __spec__: None __annotations__: {} __builtins__: <module 'builtins' (built-in)> __file__: /home/cg/root/22219/main.py __cached__: None x: 10 y: 5 z: Hello, World! print_globals: <function print_globals at 0x7f9b30c13d90>
globals() bukan sahaja membolehkan kita mendapatkan semula pembolehubah global, tetapi juga membolehkan kita mengubah suai nilainya.
Dalam contoh di bawah, kami mentakrifkan pembolehubah global x dengan nilai awal 10. Fungsi modify_global() menggunakan globals() untuk mendapatkan semula jadual simbol global dan mengubah suai nilai x kepada 20 dengan mengemas kini entri kamus secara langsung. Apabila kita mencetak nilai x sebelum dan selepas memanggil fungsi modify_global(), kita dapat melihat bahawa pengubahsuaian telah berkuat kuasa.
x = 10 def modify_global(): global_vars = globals() global_vars['x'] = 20 print("Before modification:", x) modify_global() print("After modification:", x)
Before modification: 10 After modification: 20
Kami juga boleh menggunakan fungsi globals() untuk menambah pembolehubah global baharu secara dinamik. Mari kita lihat contoh yang menunjukkan perkara yang sama.
Dalam contoh di bawah, kami mentakrifkan fungsi add_global() yang menggunakan globals() untuk menambah pembolehubah global baharu bernama new_var pada jadual simbol global. Selepas memanggil fungsi tersebut, kami mencetak nilai new_var, yang mengesahkan bahawa pembolehubah telah berjaya ditambahkan dan boleh diakses secara global.
def add_global(): global_vars = globals() global_vars['new_var'] = "I'm a new global variable!" add_global() print(new_var)
I'm a new global variable!
Dalam artikel ini, kami membincangkan apakah fungsi globals() dan untuk kegunaannya. Fungsi globals() digunakan untuk mengakses dan mengendalikan pembolehubah global dalam program. Dengan menggunakan fungsi ini, kita boleh mengambil semula, mengubah suai atau menambah pembolehubah global secara dinamik. Dengan menggunakan kuasa fungsi globals(), anda boleh meningkatkan kemahiran pengaturcaraan Python anda dengan memberi anda kawalan yang lebih besar ke atas pembolehubah global program anda.
Atas ialah kandungan terperinci Dalam Python, fungsi globals() mengembalikan kamus semua pembolehubah dan fungsi yang ditakrifkan dalam skop global semasa.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!