Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Dalam Python, fungsi globals() mengembalikan kamus semua pembolehubah dan fungsi yang ditakrifkan dalam skop global semasa.

Dalam Python, fungsi globals() mengembalikan kamus semua pembolehubah dan fungsi yang ditakrifkan dalam skop global semasa.

WBOY
WBOYke hadapan
2023-08-27 21:25:06924semak imbas

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 fungsi

globals()

Dalam 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.

Fungsi

globals() 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.

Tatabahasa

globals()

Di sini, fungsi globals() tidak menerima sebarang parameter, ia hanya mengembalikan kamus yang mewakili jadual simbol global.

Dapatkan semula pembolehubah 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.

Contoh

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()

Output

__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>

Ubah suai pembolehubah global

Fungsi

globals() bukan sahaja membolehkan kita mendapatkan semula pembolehubah global, tetapi juga membolehkan kita mengubah suai nilainya.

Contoh

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)

Output

Before modification: 10
After modification: 20

Tambah pembolehubah global baharu

Kami juga boleh menggunakan fungsi globals() untuk menambah pembolehubah global baharu secara dinamik. Mari kita lihat contoh yang menunjukkan perkara yang sama.

Contoh

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)

Output

I'm a new global variable!

Kesimpulan

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!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam