Memahami args dan kwargs*
Parameter args dan *kwargs dalam pengaturcaraan Python benarkan fungsi menerima bilangan arbitrari argumen kedudukan dan argumen kata kunci, masing-masing. Parameter ini bertindak sebagai catch-all, mengumpul sebarang argumen tambahan yang dihantar kepada fungsi.
Sebagai contoh, pertimbangkan contoh berikut:
def foo(hello, *args): print(hello) for each in args: print(each)
Di sini, fungsi foo menerima bilangan arbitrari argumen kedudukan selepas hujah pertama (hello) dan menyimpannya dalam tuple bernama args. Menjalankan fungsi ini dengan argumen berikut:
foo("LOVE", ["lol", "lololol"])
akan mencetak output berikut:
LOVE ['lol', 'lololol']
Begitu juga, **kwargs ialah parameter kamus yang menyimpan sebarang argumen kata kunci yang dihantar ke fungsi . Contohnya:
def test(**kwargs): for key, value in kwargs.items(): print(key, ":", value)
Apabila memanggil fungsi ini dengan hujah berikut:
test(name="Alice", age=20)
outputnya ialah:
name : Alice age : 20
Secara berkesan, args dan *kwargs membenarkan fungsi mengendalikan hujah yang tidak dijangka atau berubah-ubah, menjadikannya boleh disesuaikan dengan senario yang berbeza dan kes penggunaan. Ia amat berguna apabila berurusan dengan objek, membenarkan penggantian kaedah sambil mengekalkan fleksibiliti untuk meluluskan hujah tersuai.
Atas ialah kandungan terperinci Bagaimanakah `*args` dan `kwargs` Meningkatkan Fleksibiliti Fungsi dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!