Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Python

Memahami Variabel Global, Lokal, dan Nonlokal Python

Memahami Variabel Global, Lokal, dan Nonlokal Python

Kuasai penggunaan variabel global, lokal, dan nonlokal dalam Python, dan ketahui kapan menerapkannya untuk kode yang bersih dan mudah dirawat.

Video: Python Local and Global Variables

Variabel Global

Dalam Python, variabel yang dideklarasikan di luar fungsi apa pun—di tingkat modul—adalah variabel global. Ia dapat dibaca dari mana saja dalam modul, tetapi harus dideklarasikan dengan kata kunci global jika Anda ingin memodifikasinya di dalam fungsi.

Contoh: membuat dan membaca variabel global

x = "global" def foo(): print("x inside:", x) foo() print("x outside:", x)

Output

x inside: global x outside: global

Mencoba untuk menetapkan ulang x tanpa mendeklarasikannya global menghasilkan UnboundLocalError:

x = "global" def foo(): x = x * 2 print(x) foo()

Output

UnboundLocalError: local variable 'x' referenced before assignment

Untuk memodifikasi variabel global di dalam fungsi, gunakan kata kunci global:

x = "global" def foo(): global x x = x * 2 print(x) foo()

Output

globalglobal

Variabel Lokal

Sebuah variabel lokal didefinisikan di dalam tubuh fungsi dan hanya ada selama eksekusi fungsi tersebut. Ia tidak dapat diakses di luar fungsi.

Contoh: mengakses variabel lokal di luar ruang lingkupnya

def foo(): y = "local" foo() print(y)

Output

NameError: name 'y' is not defined

Mendefinisikan dan menggunakan variabel lokal dengan benar:

def foo(): y = "local" print(y) foo()

Output

local

Menggabungkan Variabel Global dan Lokal

Umum untuk menggunakan kedua ruang lingkup dalam modul yang sama. Kata kunci global memastikan bahwa variabel merujuk ke instance tingkat modul.

x = "global " def foo(): global x y = "local" x = x * 2 print(x) print(y) foo()

Output

global global local

Saat variabel lokal berbagi nama dengan variabel global, mereka independen:

x = 5 def foo(): x = 10 print("local x:", x) foo() print("global x:", x)

Output

local x: 10 global x: 5

Variabel Nonlokal

Fungsi bersarang dapat mengakses dan memodifikasi variabel dari ruang lingkup enclosing (tetapi bukan global) menggunakan kata kunci nonlocal.

def outer(): x = "local" def inner(): nonlocal x x = "nonlocal" print("inner:", x) inner() print("outer:", x) outer()

Output

inner: nonlocal outer: nonlocal

Catatan: Memperbarui variabel nonlokal di dalam fungsi inner memperbarui variabel di ruang lingkup fungsi outer.

Python

  1. Variabel, Konstanta, dan Literal C: Panduan Lengkap
  2. Kata Kunci dan Pengidentifikasi Python: Menguasai Kata Terjamin dan Konvensi Penamaan
  3. Pernyataan, Indentasi, dan Komentar Python: Panduan Jelas
  4. Variabel, Konstanta, dan Literal Python – Panduan Komprehensif
  5. Menguasai Konversi & Casting Tipe Python: Panduan Komprehensif
  6. Menguasai Input/Output Python dan Impor Modul: Panduan Praktis
  7. Menguasai Kata Kunci Global Python: Kapan dan Cara Menggunakannya
  8. Menguasai Angka, Konversi Tipe, dan Matematika di Python
  9. Menguasai Operasi Direktori dan File di Python
  10. Menguasai Error dan Exception Bawaan Python