0Pricing
Python Academy · Pelajaran

Nilai Return dan Lingkup

Pahami pernyataan return dan lingkup variabel (lokal vs global).

Nilai Return dan Lingkup adalah pelajaran Python Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Python Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Python Academy mencakup 4 pelajaran total.

Pendahuluan

Memahami pernyataan return dan ruang lingkup variabel merupakan dasar untuk menulis fungsi Python yang dapat diprediksi dan bebas bug.

Pernyataan return

return expr keluar dari fungsi dan mengirimkan expr kembali kepada pemanggil. return tanpa nilai mengirimkan None.
def double(x):
    return x * 2
print(double(5))

Pengembalian Lebih Awal

Beberapa pernyataan return diperbolehkan — pernyataan pertama yang dijalankan akan mengeluarkan fungsi. Ini berguna untuk klausa penjaga.
def abs_val(x):
    if x < 0:
        return -x
    return x
print(abs_val(-7))

Ruang Lingkup Lokal

Variabel yang dibuat di dalam fungsi bersifat lokal — variabel tersebut tidak ada di luar fungsi.
def f():
    x = 10
    print(x)
f()
# print(x)  # NameError

Ruang Lingkup Global

Variabel yang didefinisikan pada tingkat modul bersifat global. Fungsi dapat READ variabel global tanpa mendeklarasikannya.
name = 'Alice'
def greet():
    print('Hello', name)  # reads global
greet()

Kata Kunci global

global x di dalam fungsi memungkinkan Anda WRITE ke variabel global. Gunakan seperlunya — hal ini membuat kode sulit dipahami alurnya.
counter = 0
def increment():
    global counter
    counter += 1
increment()
print(counter)

Kata Kunci nonlocal

nonlocal x dalam fungsi bersarang memungkinkan Anda menulis ke variabel dalam ruang lingkup fungsi pembungkus, tetapi bukan ruang lingkup global.
def make_counter():
    count = 0
    def inc():
        nonlocal count
        count += 1
        return count
    return inc
c = make_counter()
print(c(), c())

Aturan LEGB

Python menyelesaikan nama secara berurutan: Lokal → Pembungkus → Global → Bawaan. Inilah aturan LEGB.
x = 'global'
def outer():
    x = 'enclosing'
    def inner():
        print(x)  # enclosing
    inner()
outer()

Mengembalikan Beberapa Nilai

def f(): return 1, 2, 3 mengembalikan tuple. a, b, c = f() membongkarnya.
def stats(lst):
    return min(lst), max(lst), sum(lst)/len(lst)
lo, hi, avg = stats([1,2,3,4,5])
print(lo, hi, avg)

Mengembalikan Fungsi (Closure)

Sebuah fungsi dapat mengembalikan fungsi lain. Fungsi inner mengingat ruang lingkup outer — inilah closure.
def make_adder(n):
    def adder(x):
        return x + n
    return adder
add5 = make_adder(5)
print(add5(3))

None vs Return yang Hilang

Selalu kembalikan None secara eksplisit saat menandakan ketiadaan. Mengandalkan None implisit valid, tetapi bentuk eksplisit lebih jelas.
def find(lst, val):
    for i, x in enumerate(lst):
        if x == val:
            return i
    return None
print(find([1,2,3], 9))

Pemeriksaan Singkat

Dalam aturan LEGB, ruang lingkup mana yang diperiksa terakhir?

Rangkuman

return keluar dari fungsi dengan membawa nilai. Variabel lokal tidak bocor ke luar. Gunakan global/nonlocal untuk menulis ke ruang lingkup luar. LEGB: Lokal, Pembungkus, Global, Bawaan.

Lanjutkan

Kerja bagus! Lanjutkan ke pelajaran berikutnya untuk terus maju.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Nilai Return dan Lingkup” gratis?

Ya — teks lengkap “Nilai Return dan Lingkup” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Python Academy, upgrade ke CoddyKit PRO. Kursus Python Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Nilai Return dan Lingkup”?

Pahami pernyataan return dan lingkup variabel (lokal vs global). Kamu berlatih Python Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Python Academy?

Tidak diperlukan pengalaman sebelumnya. Python Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Nilai Return dan Lingkup” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Python Academy ini?

Ya. Setiap pelajaran Python Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Mendefinisikan dan Memanggil Fungsi
  2. Argumen Default dan Kata Kunci
  3. args dan kwargs
  4. Nilai Return dan Lingkup
← Kembali ke Python Academy