Soal 1Apa yang dicetak kode berikut?def f(x, y=10):
return x + y
print(f(3))
Mendefinisikan Fungsi dengan def — Argumen, Nilai Kembalian, Default dan Keyword Argumen
Pelajari definisi fungsi Python dengan def dan return. Cakup juga argumen, nilai kembalian, default, dan keyword argument.
Ketika logika yang sama perlu dijalankan berkali-kali, kamu butuh cara untuk memberi nama pada logika itu dan memanggilnya dari mana pun kamu butuhkan. Mekanisme itu adalah fungsi, yang didefinisikan dengan keyword def.
Dengan fungsi, logika bersama tinggal di satu tempat dan setiap tempat pemanggilan cukup satu baris. Semua yang sudah kamu pakai sejauh ini — print() / len() / int() / sum() — juga adalah fungsi.
Dasar def dan return
Definisikan fungsi dengan def nama_fungsi(argumen): dan indentasi badannya. Kembalikan nilai ke pemanggil dengan return nilai. Fungsi tanpa return pada dasarnya mengembalikan None.
Argumen adalah apa yang diserahkan pemanggil ke fungsi, dan nilai kembalian adalah apa yang dikirim fungsi kembali via return. Karena fungsi yang sama bisa dipanggil dengan argumen berbeda untuk hasil yang berbeda, satu definisi bisa menggerakkan banyak titik pemanggilan.
Fungsi yang dibuat dengan def tidak dieksekusi dengan didaftarkan ke namespace. Badannya hanya berjalan ketika pemanggilan seperti greet("Budi") terjadi — dan nilai return mengalir kembali ke pemanggil.
# Tanpa argumen, tanpa nilai kembalian
def print_hello():
print("Hello World")
print_hello() # Hello World
# Dua argumen, satu nilai kembalian
def max_num(a, b):
if a >= b:
return a
return b
result = max_num(30, 20)
print(result) # 30
# return keluar dari fungsi; apa pun setelahnya tidak berjalan
def check(x):
if x < 0:
return "negatif"
return "non-negatif"
print(check(-5)) # negatif
Default argumen dan keyword argumen
Menambahkan = nilai ke argumen menetapkan default yang dipakai saat pemanggil tidak mengirimnya (default argumen).
Di sisi pemanggil, nama_argumen=nilai memungkinkanmu mengirim nilai berdasarkan nama tanpa memperhatikan posisi (keyword argumen). Default argumen secara konvensi diletakkan di akhir daftar argumen sehingga urutan tidak jadi masalah.
# Beri greeting nilai default
def greet(name, greeting="Halo"):
return f"{greeting}, {name}"
print(greet("Budi")) # Halo, Budi
print(greet("Siti", "Selamat pagi")) # Selamat pagi, Siti
print(greet(greeting="Selamat malam", name="Adi")) # keyword args bisa diubah urutan
# Output: Selamat malam, Adi
Di artikel ini kamu belajar definisi fungsi dengan def, nilai kembalian dengan return, dan default dan keyword argumen. Ketika kamu memakai fungsi dengan lancar, logika yang sama bisa dipanggil dari mana saja sebanyak yang kamu mau, dan keterbacaan kode meningkat drastis.
Cek Pemahaman
Jawab setiap pertanyaan satu per satu.
Soal 2Panggilan mana yang memakai keyword argumen?def greet(name, greeting="Hi"):
return f"{greeting}, {name}"
Soal 3Apa yang dihasilkan kode berikut?def g(x):
x + 1 # tanpa return
result = g(10)
print(result)