Penduduk Python ()

Metode lokal () memperbarui dan mengembalikan kamus dari tabel simbol lokal saat ini.

Tabel simbol adalah struktur data yang dikelola oleh kompilator yang berisi semua informasi yang diperlukan tentang program.

Ini termasuk nama variabel, metode, kelas, dll.

Terutama ada dua jenis tabel simbol.

  1. Tabel simbol global
  2. Tabel simbol lokal

Sebuah global toko tabel simbol semua informasi yang berkaitan dengan lingkup global dari program ini, dan diakses dengan Python menggunakan GLOBALS () metode.

Cakupan global berisi semua fungsi, variabel yang tidak terkait dengan kelas atau fungsi apa pun.

Demikian juga, tabel simbol lokal menyimpan semua informasi yang terkait dengan lingkup lokal program, dan diakses dengan Python menggunakan locals()metode.

Cakupan lokal bisa di dalam fungsi, di dalam kelas, dll.

Bacaan yang Direkomendasikan: Namespace dan cakupan di Python

Sintaks penduduk setempat ()

Sintaks locals()metode adalah:

 penduduk setempat ()

lokal () Parameter

locals() metode tidak mengambil parameter apa pun.

Nilai pengembalian dari penduduk setempat ()

locals() metode memperbarui dan mengembalikan kamus yang terkait dengan tabel simbol lokal saat ini.

Contoh 1: Bagaimana penduduk lokal () bekerja dengan Python?

 locals()

Keluaran

 ('Masuk': ('', 'penduduk setempat ()'), 'Keluar': (), '_': '', '__': '', '___': '', '__builtin__':, ' __builtins__ ':,' __name__ ':' __main__ ',' _dh ': (' / home / repl '),' _i ':' ',' _i1 ':' local () ',' _ih ': (' ', 'penduduk setempat ()'), '_ii': '', '_iii': '', '_oh': (), '_sh':, 'exit':, 'get_ipython':>, 'keluar':) 

Catatan: globals() dan locals()tabel simbol untuk lingkungan global adalah sama.

Contoh 2: Bagaimana penduduk lokal () bekerja di dalam lingkup lokal?

 def localsNotPresent(): return locals() def localsPresent(): present = True return locals() print('localsNotPresent:', localsNotPresent()) print('localsPresent:', localsPresent())

Keluaran

 localNotPresent: () localPresent: ('present': True) 

Contoh 3: Memperbarui nilai kamus lokal ()

 def localsPresent(): present = True print(present) locals()('present') = False; print(present) localsPresent()

Keluaran

 Betul betul 

Tidak seperti globals()kamus yang mencerminkan perubahan ke tabel global aktual, locals()kamus tidak boleh mengubah informasi di dalam tabel lokal.

Artikel yang menarik...