Saat kita memanggil suatu fungsi, perpindahan data selalu tidak dapat dipisahkan antara fungsi utama dan fungsi pemanggil . Tujuan dari parameter adalah untuk meneruskan data ke fungsi.
Misalnya kita membeli juicer, saat kita menambahkan apel, jus apel akan keluar. Saat kita menambahkan semangka, jus semangka akan keluar. Parameter memainkan peran seperti itu suatu fungsi, dan fungsi yang dipanggil akan mengembalikan kita hasilnya.
Selanjutnya mari kita pelajari tentang passing parameter.
Untuk mempelajari passing parameter fungsi, pertama-tama kita perlu memahami apa itu parameter formal dan parameter aktual. Mari kita lanjutkan dengan contoh di atas. Kita memiliki wadah untuk menampung buah di dalam pembuat jus. Kita memasukkan buah ke dalam wadah ini, dan kemudian pembuat jus mulai bekerja. Parameter formal dan parameter sebenarnya memiliki hubungan yang serupa.
Parameter formal adalah parameter yang ditentukan dalam tanda kurung saat kita mendefinisikan suatu fungsi. Kita akan menggunakan parameter ini untuk menulis kode di dalam fungsi, dan parameter aktual adalah parameter yang diteruskan saat fungsi tersebut dipanggil pada parameter aktual ini, bukan parameter formal.
Lihatlah contoh berikut:
>>>A=30>>>defget_salary(hari):...gaji=hari*300...cetak(gaji)...>>>get_salary(A)9000
Pada contoh di atas, parameter hari yang digunakan saat fungsi dibuat adalah parameter formal. Saat kita memanggil fungsi tersebut, A adalah parameter aktual, yang sebenarnya merupakan parameter yang akan dimasukkan ke dalam fungsi.
Saat kita membuat suatu fungsi, kita dapat mendefinisikan beberapa parameter formal dalam tanda kurung. Saat kita memanggilnya, jumlah dan posisi parameter harus konsisten dengan yang dibuat.
Apa jadinya jika fungsi yang kita buat memiliki 2 parameter formal, namun kita hanya menggunakan 1 parameter aktual saat memanggilnya?
>>>defget_message(alamat,nomor):...print(alamat,nomor)...>>>get_message('Suzhou')Traceback(panggilan terakhir):File<stdin>,line1,in<module>TypeError:get_message ()argumen posisi yang diperlukan hilang1:'angka'
Kita dapat menemukan bahwa ketika jumlah parameter aktual tidak sama dengan jumlah parameter formal, pengecualian akan dilempar, yang secara khusus berarti bahwa nomor parameter posisi yang diperlukan tidak ada.
Ketika posisi parameter tidak konsisten, dua kesalahan akan terjadi. Pertama adalah melaporkan kesalahan secara langsung, karena kita akan mendefinisikan tipe yang berbeda sesuai dengan sifat parameter saat meneruskan parameter, sehingga kesalahan tipe data akan memunculkan pengecualian.
Kesalahan lainnya adalah tipe data parameter yang dikirimkan sudah benar, tetapi posisinya salah, sehingga menyebabkan hasil keluaran salah.
Untuk meningkatkan keterbacaan program, argumen kata kunci juga dapat digunakan saat memanggil fungsi.
Kita mempelajari argumen kata kunci dengan menghitung volume wadah.
>>>defvolume(panjang,lebar,tinggi):...volume=panjang*lebar*tinggi...print('Volumenya adalah: ',volume)...>>>volume(panjang=20,lebar= 30, tinggi=3) volumenya: 1800
Menggunakan parameter kata kunci dapat menyimpan proses pendefinisian variabel, menetapkan nilai ke parameter secara langsung saat fungsi dipanggil, lalu meneruskannya ke fungsi, dan akhirnya mengembalikan hasilnya. Pada metode transfer ini, perbedaan posisi parameter tidak mempengaruhi hasil keluaran.
Saat kita mendefinisikan suatu fungsi, kita dapat menentukan nilai awal untuk parameter fungsi tersebut, sehingga jika tidak ada parameter sebenarnya yang diberikan saat kita memanggil fungsi tersebut, fungsi tersebut akan menggunakan parameter default.
Lihatlah contoh berikut:
>>>defvolume(length=100,width=100,height=10):...volume=length*width*height...print(volume)...>>>volume()#Tidak memberikan parameter sebenarnya Ketika parameter aktual diberikan, parameter default 100000>>>volume(10,10,10)# akan digunakan. Parameter aktual akan diteruskan dan hasil keluarannya adalah 1000.
Melalui contoh di atas, jika kita telah memberikan nilai default saat membuat fungsi, maka parameter default akan otomatis digunakan jika kita tidak memberikan parameter sebenarnya saat menggunakan fungsi tersebut.
Dalam Python, jumlah parameter suatu fungsi dapat diubah, yang berarti jumlah parameter dapat tidak menentu. Ada dua jenis parameter variabel. Yang pertama adalah menambahkan * sebelum parameter. Dengan cara ini, parameter variabel diteruskan dalam bentuk tupel saat meneruskannya. parameter variabel diteruskan dalam bentuk tupel. Parameter diteruskan dalam bentuk kamus saat meneruskannya. Kami terutama memperkenalkan metode pertama.
Lihatlah contoh berikut:
>>>defadd_number(*number):...add_num=0...foriinnumber:...add_num+=i...print(add_num)...>>>add_number(1,2,3,4,5 )15
Saat menggunakan parameter variabel, parameter tersebut akan disimpan dalam sebuah tuple dan diteruskan ke fungsi, sehingga ketika kita ingin menggunakan parameter tersebut, kita dapat menggunakan nilai traversal atau indeks.
Pengoperan parameter suatu fungsi kurang lebih sama. Jika Anda ingin mempelajari fungsi dengan baik, Anda harus menguasai penerusan parameter yang benar sangat penting dalam penggunaan fungsi.