argument *args **kwargs python
Python

Belajar Python Dasar : Memahami argumen *args **kwargs

Argument *args dan **kwargs digunakan sebagai variabel parameter di fungsi. *args dan ** kwargs memungkinkan untuk memasukkan beberapa argumen ke dalam satu parameter fungsi.

Pada materi fungsi yang telah kita pelajari, parameter di fungsi menentukan berapa banyak data yang akan diolah di dalam fungsi.

Misalnya kita membuat fungsi penjumlah variabel

#membuat fungsi tambah
def tambah(a, b):
    return a+b

#memanggil fungsi tambah dan menyimpan di variabel "c"
c = tambah(10, 5)
print(c)

Fungsi diatas bekerja.. Tapi hanya untuk dua argumen.

Bagaimana jika ingin melakukan penjumlahan dengan beberapa argumen dengan fungsi yang sama? Tentu dengan kode diatas tidak akan bisa digunakan untuk menghitung 3 nilai karena parameter yang ada hanya untuk 2 argumen.

Argumen *args dan **kwargs adalah solusinya

Dengan argument *args dan **kwargs kita mampu memparsing beberapa varibel menjadi 1 parameter yang dinamis.

Contohnya begini

def tambah(*args):
    hasil = 0
    for nilai in args:
        hasil += nilai
        
    return hasil

c = tambah(10, 5)
d = tambah(10, 5, 3)
e = tambah(10, 5, 3, 1)

print(c)
print(d)
print(e)

Pertama adalah membuat fungsi tambah yang menggunakan parameter *args. Di dalam fungsi kita definisikan variabel hasil untuk menyimpan penjumlahan untuk setiap variabel.

Selanjutnya kita mendefiniskan beberapa variabel yang menerima hasil penjumlahan dengan beberapa opsi argumen

variabel c -> memanggil fungsi tambah dengan 2 argument
variabel d -> memanggil fungsi tambah dengan 3 argument
variabel e -> memanggil fungsi tambah dengan 4 argument

Jadi ketika dicetak hasilnya adalah

15 
18 
19

Argumen args kwargs hanyalah sebuah nama. Kita bisa menggunakan nama apapun untuk menggantikannya seperti variabel pada umumnya

Trus apa bedanya argument *args dan *kwargs ?

*args / satu bintang ( * ) digunakan untuk merubah parameter menjadi bentuk Tuple
**kwargs / double bintang ( ** ) digunakan untuk merubah parameter menjadi bentuk Dictionary

Contoh penggunaan argumen *args

#membuat fungsi cetak dengan argumen *args
def cetak(*mahasiswa):
    print(mahasiswa)
 
#memanggil fungsi cetak   
cetak("faqih", "ina", "anton")

Hasilnya adalah struktur data Tuple

('faqih', 'ina', 'anton')

Contoh penggunaan argumen *kwargs

#membuat fungsi cetak dengan argumen *kwargs
def cetak(**mahasiswa):
    print(mahasiswa)
    
#memanggil fungsi cetak   
cetak(nama="faqih", alamat="bandung")
cetak(nama="ina", alamat="jakarta")

Hasilnya adalah struktur data Dictionary

{'nama': 'faqih', 'alamat': 'bandung'} 
{'nama': 'ina', 'alamat': 'jakarta'}

Materi python dibagi menjadi beberapa bahasan antara lain:

Pengenalan python dan mengapa harus belajar
Instalasi Python dengan Anaconda di Windows
Instalasi Python dengan Anaconda di Linux
Eksekusi file Python
Pengenalan Variabel dan Tipe Data di Python
Penulisan komentar di python
Teknik Print di Python
Mengenal Jenis Operator di Python
User Input di Python
Memahami Percabangan di Python
Memahami Perulangan di Python
Menggunakan Fungsi di Python
Lambda expression
Struktur List di Python
Struktur Tuple di Python
Struktur Dictionary di Python
File Handling di Python
Memahami Argumen *args **kwargs
Cara Install Library Python
Memahami Jupyter notebook dan cara menggunakannya

Leave a Reply

Your email address will not be published. Required fields are marked *