Daftar Referensi Python

Scope (lingkup) menentukan di mana sebuah variabel dikenali. Variabel yang dibuat di dalam fungsi disebut variabel lokal — hanya hidup selama fungsi berjalan. Variabel yang dibuat di luar semua fungsi disebut variabel global — bisa dibaca dari mana saja.

Sintaks

skor = 100          # variabel global

def hitung():
    poin = 10       # variabel lokal
    print(skor)     # global boleh dibaca di sini

Perbandingan

Jenis Didefinisikan di Bisa diakses dari
Lokal dalam fungsi hanya dalam fungsi itu; hilang saat fungsi selesai
Global luar semua fungsi seluruh program (dibaca); untuk mengubahnya dari dalam fungsi perlu kata kunci global

Contoh

pesan = "Halo!"  # variabel global

def tampilkan():
    print(pesan)  # membaca variabel global

tampilkan()

Coba di IDE

Output:

Halo!

Contoh Lainnya

Variabel lokal hilang di luar fungsi

def halo():
    ucapan = "Hai, dunia!"  # variabel lokal
    print(ucapan)

halo()
# print(ucapan)  <- NameError: hanya ada di dalam fungsi

Coba di IDE

Output:

Hai, dunia!

Nama sama tidak mengubah variabel global

skor = 10

def ubah():
    skor = 99  # ini variabel LOKAL baru
    print("Di dalam fungsi:", skor)

ubah()
print("Di luar fungsi:", skor)

Coba di IDE

Output:

Di dalam fungsi: 99
Di luar fungsi: 10

Mengubah variabel global dengan kata kunci global

angka = 0

def tambah():
    global angka
    angka += 1

for _ in range(3):
    tambah()

print(angka)

Coba di IDE

Output:

3

Perhatian: pakai global seperlunya saja. Terlalu banyak fungsi yang mengubah variabel global membuat alur program sulit dilacak — lebih baik fungsi menerima data lewat parameter dan mengembalikan hasil lewat return.

Kesalahan Umum

  • Mengakses variabel lokal di luar fungsinya → NameError.
  • Mengubah variabel global di dalam fungsi tanpa global, misalnya angka += 1UnboundLocalError.
  • Memberi nilai ke nama yang sama dengan variabel global → Python membuat variabel lokal baru; variabel globalnya tidak berubah.

Pelajari Lebih Lanjut