Python
Dalam Python, Anda dapat mendefinisikan fungsi yang mengambil sejumlah variabel argumen. Dalam artikel ini, Anda akan belajar mendefinisikan fungsi tersebut menggunakan argumen default, kata kunci, dan arbitrer.
Dalam topik fungsi yang ditentukan pengguna, kita belajar tentang mendefinisikan suatu fungsi dan memanggilnya. Jika tidak, pemanggilan fungsi akan menghasilkan kesalahan. Ini contohnya.
def greet(name, msg):
"""This function greets to
the person with the provided message"""
print("Hello", name + ', ' + msg)
greet("Monica", "Good morning!")
Keluaran
Hello Monica, Good morning!
Di sini, fungsi greet()
memiliki dua parameter.
Karena kami telah memanggil fungsi ini dengan dua argumen, itu berjalan dengan lancar dan kami tidak mendapatkan kesalahan apa pun.
Jika kita memanggilnya dengan jumlah argumen yang berbeda, interpreter akan menampilkan pesan kesalahan. Di bawah ini adalah panggilan ke fungsi ini dengan satu dan tanpa argumen beserta pesan kesalahannya masing-masing.
>>> greet("Monica") # only one argument TypeError: greet() missing 1 required positional argument: 'msg'
>>> greet() # no arguments TypeError: greet() missing 2 required positional arguments: 'name' and 'msg'
Sampai sekarang, fungsi memiliki sejumlah argumen yang tetap. Dalam Python, ada cara lain untuk mendefinisikan fungsi yang dapat mengambil sejumlah variabel argumen.
Tiga bentuk berbeda dari jenis ini dijelaskan di bawah ini.
Argumen fungsi dapat memiliki nilai default dalam Python.
Kami dapat memberikan nilai default ke argumen dengan menggunakan operator penugasan (=). Ini contohnya.
def greet(name, msg="Good morning!"):
"""
This function greets to
the person with the
provided message.
If the message is not provided,
it defaults to "Good
morning!"
"""
print("Hello", name + ', ' + msg)
greet("Kate")
greet("Bruce", "How do you do?")
Keluaran
Hello Kate, Good morning! Hello Bruce, How do you do?
Dalam fungsi ini, parameter name
tidak memiliki nilai default dan diperlukan (wajib) selama panggilan.
Di sisi lain, parameter msg
memiliki nilai default "Good morning!"
. Jadi, ini opsional selama panggilan. Jika nilai diberikan, itu akan menimpa nilai default.
Sejumlah argumen dalam suatu fungsi dapat memiliki nilai default. Tetapi begitu kita memiliki argumen default, semua argumen di sebelah kanannya juga harus memiliki nilai default.
Ini berarti, argumen non-default tidak dapat mengikuti argumen default. Misalnya, jika kita telah mendefinisikan header fungsi di atas sebagai:
def greet(msg = "Good morning!", name):
Kami akan mendapatkan kesalahan sebagai:
SyntaxError: non-default argument follows default argument
Saat kita memanggil fungsi dengan beberapa nilai, nilai-nilai ini ditugaskan ke argumen sesuai dengan posisinya.
Misalnya, pada fungsi di atas greet()
, ketika kami menyebutnya sebagai greet("Bruce", "How do you do?")
, nilai "Bruce"
ditugaskan ke argumen name dan juga "How do you do?"
ke pesan .
Python memungkinkan fungsi dipanggil menggunakan argumen kata kunci. Ketika kita memanggil fungsi dengan cara ini, urutan (posisi) argumen dapat diubah. Panggilan berikut ke fungsi di atas semuanya valid dan menghasilkan hasil yang sama.
# 2 keyword arguments
greet(name = "Bruce",msg = "How do you do?")
# 2 keyword arguments (out of order)
greet(msg = "How do you do?",name = "Bruce")
1 positional, 1 keyword argument
greet("Bruce", msg = "How do you do?")
Seperti yang bisa kita lihat, kita bisa mencampur argumen posisi dengan argumen kata kunci selama pemanggilan fungsi. Tetapi kita harus ingat bahwa argumen kata kunci harus mengikuti argumen posisi.
Memiliki argumen posisi setelah argumen kata kunci akan menghasilkan kesalahan. Misalnya pemanggilan fungsi sebagai berikut:
greet(name="Bruce","How do you do?")
Akan menghasilkan kesalahan:
SyntaxError: non-keyword arg after keyword arg
Terkadang, kita tidak mengetahui terlebih dahulu jumlah argumen yang akan dilewatkan ke dalam suatu fungsi. Python memungkinkan kita untuk menangani situasi seperti ini melalui pemanggilan fungsi dengan sejumlah argumen yang berubah-ubah.
Dalam definisi fungsi, kami menggunakan tanda bintang (*) sebelum nama parameter untuk menunjukkan jenis argumen ini. Ini contohnya.
def greet(*names):
"""This function greets all
the person in the names tuple."""
# names is a tuple with arguments
for name in names:
print("Hello", name)
greet("Monica", "Luke", "Steve", "John")
Keluaran
Hello Monica Hello Luke Hello Steve Hello John
Di sini, kami telah memanggil fungsi dengan banyak argumen. Argumen ini dibungkus menjadi Tuple sebelum diteruskan ke fungsi. Di dalam fungsi, kami menggunakan for
loop untuk mengambil kembali semua argumen.
Python
Daftar Python Dalam tutorial ini, kita akan mempelajari segala sesuatu tentang daftar Python:membuat daftar, mengubah elemen daftar, menghapus elemen, dan operasi daftar lainnya dengan bantuan contoh. Video:Daftar Python dan Tuple Daftar Python adalah salah satu tipe data paling serbaguna yang me
Tuple Python Dalam artikel ini, Anda akan mempelajari segala sesuatu tentang tupel Python. Lebih khusus lagi, apa itu tupel, cara membuatnya, kapan menggunakannya, dan berbagai metode yang harus Anda ketahui. Video:Daftar Python dan Tuple Tuple dalam Python mirip dengan daftar. Perbedaan antara ke
Apa itu Fungsi Utama Python? Fungsi utama Python adalah titik awal dari setiap program. Ketika program dijalankan, interpreter python menjalankan kode secara berurutan. Fungsi utama dijalankan hanya ketika dijalankan sebagai program Python. Ini tidak akan menjalankan fungsi utama jika diimpor sebag
Apa itu Fungsi di Python? Fungsi dalam Python adalah bagian dari kode yang berjalan ketika direferensikan. Ini digunakan untuk menggunakan kode di lebih dari satu tempat dalam suatu program. Disebut juga metode atau prosedur. Python menyediakan banyak fungsi bawaan seperti print(), input(), compile