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

Variabel Python Global, Lokal dan Nonlokal

Variabel Python Global, Lokal, dan Nonlokal

Dalam tutorial ini, Anda akan belajar tentang variabel Global Python, variabel Lokal, variabel Nonlokal dan di mana menggunakannya.

Video:Variabel Lokal dan Global Python

Variabel Global

Dalam Python, variabel yang dideklarasikan di luar fungsi atau dalam lingkup global dikenal sebagai variabel global. Ini berarti bahwa variabel global dapat diakses di dalam atau di luar fungsi.

Mari kita lihat contoh bagaimana variabel global dibuat dengan Python.

Contoh 1:Buat Variabel Global

x = "global"

def foo():
    print("x inside:", x)


foo()
print("x outside:", x)

Keluaran

x inside: global
x outside: global

Dalam kode di atas, kami membuat x sebagai variabel global dan mendefinisikan foo() untuk mencetak variabel global x . Terakhir, kita panggil foo() yang akan mencetak nilai x .

Bagaimana jika Anda ingin mengubah nilai x di dalam suatu fungsi?

x = "global"

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

foo()

Keluaran

UnboundLocalError: local variable 'x' referenced before assignment

Output menunjukkan kesalahan karena Python memperlakukan x sebagai variabel lokal dan x juga tidak didefinisikan di dalam foo() .

Untuk membuatnya berfungsi, kami menggunakan global kata kunci. Kunjungi Python Global Keyword untuk mempelajari lebih lanjut.


Variabel Lokal

Variabel yang dideklarasikan di dalam badan fungsi atau dalam lingkup lokal dikenal sebagai variabel lokal.

Contoh 2:Mengakses variabel lokal di luar cakupan

def foo():
    y = "local"


foo()
print(y)

Keluaran

NameError: name 'y' is not defined

Output menunjukkan kesalahan karena kami mencoba mengakses variabel lokal y dalam lingkup global sedangkan variabel lokal hanya bekerja di dalam foo() atau lingkup lokal.


Mari kita lihat contoh bagaimana variabel lokal dibuat dengan Python.

Contoh 3:Buat Variabel Lokal

Biasanya, kita mendeklarasikan variabel di dalam fungsi untuk membuat variabel lokal.

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

foo()

Keluaran

local

Mari kita lihat masalah sebelumnya di mana x adalah variabel global dan kami ingin memodifikasi x di dalam foo() .


Variabel global dan lokal

Di sini, kami akan menunjukkan cara menggunakan variabel global dan variabel lokal dalam kode yang sama.

Contoh 4:Menggunakan variabel Global dan Lokal dalam kode yang sama

x = "global "

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

foo()

Keluaran

global global 
local

Dalam kode di atas, kami mendeklarasikan x sebagai global dan y sebagai variabel lokal di foo() . Kemudian, kami menggunakan operator perkalian * untuk mengubah variabel global x dan kami mencetak keduanya x dan y .

Setelah memanggil foo() , nilai x menjadi global global karena kami menggunakan x * 2 untuk mencetak dua kali global . Setelah itu, kami mencetak nilai variabel lokal y yaitu local .


Contoh 5:Variabel global dan variabel Lokal dengan nama yang sama

x = 5

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


foo()
print("global x:", x)

Keluaran

local x: 10
global x: 5

Dalam kode di atas, kami menggunakan nama yang sama x untuk variabel global dan variabel lokal. Kami mendapatkan hasil yang berbeda ketika kami mencetak variabel yang sama karena variabel dideklarasikan di kedua lingkup, yaitu lingkup lokal di dalam foo() dan cakupan global di luar foo() .

Saat kita mencetak variabel di dalam foo() itu menghasilkan local x: 10 . Ini disebut lingkup lokal variabel.

Demikian pula, ketika kita mencetak variabel di luar foo() , ini menghasilkan global x:5 . Ini disebut cakupan global variabel.


Variabel Nonlokal

Variabel nonlokal digunakan dalam fungsi bersarang yang cakupan lokalnya tidak ditentukan. Ini berarti bahwa variabel tidak boleh berada dalam lingkup lokal maupun global.

Mari kita lihat contoh bagaimana variabel nonlokal digunakan dalam Python.

Kami menggunakan nonlocal kata kunci untuk membuat variabel nonlokal.

Contoh 6:Buat variabel nonlokal

def outer():
    x = "local"

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

    inner()
    print("outer:", x)


outer()

Keluaran

inner: nonlocal
outer: nonlocal

Dalam kode di atas, ada inner() bersarang fungsi. Kami menggunakan nonlocal kata kunci untuk membuat variabel nonlokal. inner() fungsi didefinisikan dalam lingkup fungsi lain outer() .

Catatan :Jika kita mengubah nilai variabel nonlokal, perubahan akan muncul di variabel lokal.


Python

  1. C Variabel, Konstanta dan Literal
  2. Kata Kunci dan Pengidentifikasi Python
  3. Pernyataan Python, Indentasi dan Komentar
  4. Variabel Python, Konstanta dan Literal
  5. Konversi Jenis Python dan Pengecoran Jenis
  6. Masukan, Keluaran, dan Impor Python
  7. Kata Kunci Global Python
  8. Nomor Python, Konversi Jenis dan Matematika
  9. Direktori Python dan Manajemen File
  10. Kesalahan Python dan Pengecualian Bawaan