目次
1. Apa itu argumen di Python?
Dalam Python, argumen adalah cara bagi fungsi atau metode untuk menerima data dari luar dan melakukan proses tertentu. Dengan memberikan argumen ke fungsi, memungkinkan pemrosesan data yang fleksibel, serta meningkatkan kemampuan reuse dan extensibility program. Artikel ini akan menjelaskan secara bertahap dasar hingga penerapan argumen Python.Peran dasar fungsi dan argumen
Fungsi adalah kumpulan perintah untuk menjalankan tugas tertentu. Argumen adalah data input yang diberikan ke fungsi, dan digunakan seperti berikut.def greet(name):
print(f"Halo, {name}!")
Dalam contoh ini, dengan memberikan nama apa saja ke argumen name
, Anda dapat menampilkan pesan khusus.greet("佐川") # Output: Halo, 佐川!
2. Dasar Argumen di Python
Selanjutnya, kita akan melihat cara menggunakan argumen di Python dari perspektif argumen posisi, argumen kata kunci, dan argumen default.Argumen Posisi dan Pentingnya
Argumen posisi diteruskan ke parameter dalam fungsi sesuai urutan yang ditentukan saat fungsi dipanggil.def add(a, b):
return a + b
result = add(5, 3) # hasil: 8
Menggunakan Argumen Kata Kunci
Dengan argumen kata kunci, Anda dapat memberikan nilai secara eksplisit ke fungsi tanpa memperhatikan urutan argumen.def introduce(name, age):
print(f"Saya {name}. Umur saya {age} tahun.")
introduce(age=25, name="Sagawa") # output: Saya Sagawa. Umur saya 25 tahun.
Penggunaan Argumen Default
Dengan menetapkan argumen default, Anda dapat menggunakan nilai default ketika argumen dihilangkan.def greet(name="Tamu"):
print(f"Halo, {name}!")
greet() # output: Halo, Tamu!
Urutan Argumen
Jika Anda menggunakan argumen posisi dan argumen kata kunci secara bersamaan, argumen posisi harus ditentukan terlebih dahulu, diikuti oleh argumen kata kunci. Jika urutannya salah, akan terjadi error.3. Argumen Panjang Variabel Python (*args dan **kwargs)
*args
cara penggunaan
*args
digunakan untuk mengirimkan sejumlah argumen posisi ke fungsi. Hal ini memungkinkan fungsi dibuat lebih umum.def print_numbers(*args):
for number in args:
print(number)
print_numbers(1, 2, 3)
**kwargs
cara penggunaan
**kwargs
dapat digunakan untuk menerima argumen kata kunci apa pun dalam bentuk kamus.def print_info(**kwargs):
for key, value in kwargs.items():
print(f"{key}: {value}")
print_info(name="Sagawa", age=30, job="Penulis")
*args
dan **kwargs
kombinasi
*args
dan **kwargs
dapat digabungkan untuk membuat fungsi fleksibel yang menerima baik argumen posisi maupun argumen kata kunci.def process_data(*args, **kwargs):
total = sum(args)
print(f"Total: {total}")
for key, value in kwargs.items():
print(f"{key}: {value}")
process_data(1, 2, 3, name="Sagawa", age=30)
4. Penerapan dan Contoh Penggunaan Argumen
Contoh Praktis: Penanganan Parameter API
Dalam pemanggilan API, Anda perlu menangani parameter yang dinamis.*args
dan **kwargs
dapat digunakan untuk menangani banyak parameter secara fleksibel.def api_call(endpoint, **params):
print(f"Endpoint API: {endpoint}")
for key, value in params.items():
print(f"{key}: {value}")
api_call("/user", id=123, action="view")
Penerapan pada Pemrosesan Data Skala Besar
Bahkan pada fungsi yang memproses data dalam jumlah besar,*args
dapat digunakan untuk menangani argumen variabel panjang dengan efisien.5. Penanganan Kesalahan dan Validasi Argumen
Penanganan Kesalahan untuk Jumlah Argumen
Jika jumlah argumen yang diharapkan fungsi tidak mencukupi, penanganan kesalahan dapat mencegah program crash.def add_numbers(*args):
if len(args) < 2:
raise ValueError("Setidaknya diperlukan 2 argumen")
return sum(args[:2])
Validasi Tipe
Dengan memeriksa tipe argumen, Anda dapat mencegah kesalahan yang tidak terduga.def multiply(a, b):
if not isinstance(a, (int, float)) or not isinstance(b, (int, float)):
raise TypeError("Argumen harus berupa angka")
return a * b
try-except
untuk Penanganan Kesalahan
Dengan menggunakan sintaks try-except
, Anda dapat menangkap kesalahan dan memprosesnya dengan tepat.def divide(a, b):
try:
result = a / b
except ZeroDivisionError:
return "Tidak dapat membagi dengan 0"
except TypeError:
return "Silakan masukkan angka"
return result
6. Ringkasan
Melalui artikel ini, kami telah mencakup secara luas dasar hingga penerapan argumen Python. Khususnya, kami ingin menekankan cara mendefinisikan fungsi yang fleksibel menggunakan*args
dan **kwargs
, serta pentingnya penanganan error dan validasi.Poin Utama:
- Dasar argumen posisi, argumen kata kunci, dan argumen default
- Definisi fungsi yang fleksibel menggunakan
*args
dan**kwargs
- Pentingnya penanganan error dan validasi terhadap argumen