Apps Artificial Intelligence CSS DevOps Go JavaScript Laravel Linux MongoDB MySQL PHP Python Rust Vue

Cara Menggunakan Variabel Global di Fungsi Python

2 min read .
Cara Menggunakan Variabel Global di Fungsi Python

Dalam Python, variabel punya scope yang menentukan di mana mereka bisa diakses atau dimodifikasi. Konsep variabel global penting ketika kamu ingin berbagi variabel di beberapa fungsi atau modul. Tapi, hati-hati, karena mengubah variabel global di dalam fungsi bisa tricky. Di sini, kita akan bahas cara menggunakan variabel global di fungsi Python, potensi jebakannya, dan praktik terbaik untuk mengelola global state.

1. Memahami Variabel Global

Variabel global didefinisikan di luar fungsi atau kelas, dan bisa diakses dari mana saja, termasuk di dalam fungsi. Sebaliknya, variabel yang dideklarasikan di dalam fungsi bersifat lokal. Untuk memodifikasi variabel global dalam fungsi, kita perlu menggunakan kata kunci global.

# Variabel global
counter = 0

def increment_counter():
    global counter
    counter += 1

increment_counter()
print(counter)  # Output: 1

Dengan global, Python tahu bahwa kita ingin memodifikasi variabel global counter, bukan membuat variabel lokal baru.

2. Kapan Menggunakan Variabel Global

Variabel global berguna ketika kita perlu menjaga state yang sama di banyak fungsi atau modul. Contohnya:

  • Setting Konfigurasi: Misal API key atau path file yang perlu diakses global.
  • Counter atau Accumulator: Hitungan atau akumulasi yang dipakai di banyak fungsi.
  • Flags: Penanda global untuk mengontrol alur program.

3. Memodifikasi Variabel Global di Fungsi

Gunakan global ketika ingin memodifikasi variabel global di dalam fungsi.

total = 0  # Variabel global

def add_to_total(amount):
    global total
    total += amount

add_to_total(5)
print(total)  # Output: 5

Tanpa global, Python menganggap total sebagai variabel lokal, yang akan memicu UnboundLocalError.

4. Potensi Masalah Variabel Global

Meski praktis, variabel global punya risiko:

  • Efek Samping Tak Terduga: Bisa diubah dari mana saja, sulit dilacak.
  • Bikin Kode Sulit Dibaca: Alur data jadi kurang jelas.
  • Sulit di-test: State global bisa mengganggu unit test karena persist antar tes.

5. Praktik Terbaik

  • Batasi Penggunaan: Pakai global hanya bila perlu, lebih baik lewat argumen fungsi.
  • Konvensi Penamaan: Bisa pakai huruf kapital (GLOBAL_VAR) supaya jelas beda dengan lokal.
  • Enkapsulasi: Bungkus state global dalam kelas atau modul.
  • Gunakan global Secukupnya: Hanya saat ingin memodifikasi, akses saja nggak perlu.

6. Contoh Praktis: Counter Sederhana

count = 0  # Variabel global

def increment():
    global count
    count += 1

def reset():
    global count
    count = 0

increment()
increment()
print(count)  # Output: 2
reset()
print(count)  # Output: 0

count bisa dipakai di beberapa fungsi, dan global memastikan perubahan tersimpan.

Kesimpulan

Menggunakan variabel global di Python gampang, tapi butuh perhatian supaya nggak menimbulkan masalah. Pahami scope variabel, gunakan global dengan bijak, dan ikuti praktik terbaik supaya kode tetap jelas, mudah dipelihara, dan mudah di-test.

Lihat Juga

chevron-up