Skip to content Skip to sidebar Skip to footer

Widget Atas Posting

Pengertian Arbitary Keyword Argument (**kwargs) Pada Bahasa Python.

Pada artikel kemarin kita sudah membahas pengertian Arbitary Arguments(*args) kali ini kita akan membahas tentang Arbitary Keyword Arguments.
 Apa perbedaan dari Arbitary Arguments dengan Arbitary Keyword Arguments ? Perbedaanya terletak pada penulisan named parameter atau named argumen. Dan Jika dalam arbitary argument, argument fungsi ditulis langsung dengan menggunakan nilai saja, sedangkan dalam arbitary keyword arguments, argumen fungsi ditulis dalam bentuk berpasangan tyang berisi nama dan value. 

Saat berada dalam fungsi, parameter kwargs berbentuk tipe data dictionary. Arbitary keyword arguments merupakan istilah yang digunakan untuk menyebut jumlah named argument dalam fungsi yang berubah-ubah atau tidak dapat ditentukan. Dalam penulisan arbitary keyword arguments dalam membuat parameter depannya dikasih bintang 2 seperti contoh : **kwargs 

Contoh Kode Program Arbitary Keyword Arguments
def kalimat(**kwargs):
  print(kwargs)
  print(type(kwargs))
kalimat(a="Saya", b="Sedang", c="Belajar", d="Python")

Maka hasilnya akan seperti dibawah ini

{'a': 'Saya', 'b': 'Sedang', 'c': 'Belajar', 'd': 'Python'} 

Pada baris pertama admin membuat fungsi dengan nama kalimat() dengan menggunakan satu parameter **kwargs yang digunakan untuk menampung arbitary keyword arguments. Dalam isi fungsi kalimat() admin langsung menampilkan hasil parameter ( print(kwargs) ) serta memeriksa tipe datanya ( print(type(kwargs) ). 

Kemudian pada baris yang terakhir admin memanggil fungsi kalimat() dengan empat named argumen sehingga hasilnya seperti diatas. Jika dalam arbitary arguments (*args) hasilnya mempunyai tipe data tuple, maka dalam arbitary keyword arguments (**kwargs) akan berbentuk dictionary karena berpasangan yang berisi nama dan nilai. Isi dalam parameter arbitary keywords arguments bisa juga di isi dengan perulangan for. Tidak jauh beda dengan arbitary arguments.

Seperti pada kode program berikut ini :
def kalimat(**kwargs):
  for n in kwargs:
    print(n)
    
kalimat(a="Saya", b="Sedang", c="Belajar", d="Python")

Maka hasilnya

a
b
c

Dalam fungsi kalimat() ada perulangan for yang digunakan untuk menampilkan nilai argument yang dikirim. Namun karena kwargs merupakan sebuah dictionary maka yang akan ditampilkan key atau nama dari dictionary tersebut. Jika kita ingin menampilkan isi atau value dictionary dalam perulangan for maka kita dapat menggunakan kode program berikut ini.
def kalimat(**kata):
  for n in kata.values():
    print(n)
    
kalimat(a="Saya", b="Sedang", c="Belajar", d="Python") 

maka hasil kode programnya adalah sebagai berikut ini :

Saya
Sedang
Belajar
Python 

Dalam penulisan parameter arbitary keyword arguments tidak harus menggunakan kata **kwargs boleh dengan kata yang lainnya yang penting ada dua bintang di depannya. Kalao kita lihat pada kode program yang baru diatas dengan kode program sebelumnya perbedaan hanya berada di baris nomer dua ada tambahan kata.values()

Dengan perintah tersebut maka variabel n akan berisi value atau isi dari setiap element dictionary. Dari hasil kode diatas kata yang dihasilkan menjalur ke bawah bagaimana jika kita ingin menampilkannya menyamping atau memanjang ? maka kode programnya seperti berikut ini :
def kalimat(**kwargs):
  abc = ""
  for n in kwargs.values():
      abc += n + " "
  return abc;
    
print( kalimat(a="Saya", b="Sedang", c="Belajar", d="Python"))

maka hasilnya

Saya Sedang Belajar Python

Post a Comment for "Pengertian Arbitary Keyword Argument (**kwargs) Pada Bahasa Python."