Memahami Kegunaan args dan kwargs dalam Python*
Sambil biasa dengan takrifan args dan *kwargs sebagai senarai hujah kedudukan dan kamus hujah kata kunci, masing-masing, seseorang mungkin tertanya-tanya tentang aplikasi praktikal mereka dalam pengaturcaraan.
*args amat berguna apabila fungsi memerlukan bilangan hujah yang sewenang-wenangnya. Contohnya, fungsi yang mencetak senarai item boleh ditakrifkan seperti berikut:
def print_items(*args): for count, item in enumerate(args): print(f'{count}. {item}')
Fungsi ini boleh mengendalikan sebarang bilangan hujah yang dihantar kepadanya, seperti ditunjukkan di bawah:
print_items('apple', 'banana', 'cabbage') # 0. apple # 1. banana # 2. cabbage
**kwargs, sebaliknya, membenarkan untuk menghantar hujah kata kunci yang tidak ditakrifkan secara eksplisit dalam definisi fungsi. Pertimbangkan fungsi berikut:
def print_info(**kwargs): for key, value in kwargs.items(): print(f'{key} = {value}')
Fungsi ini boleh mencetak pasangan kata kunci dan nilai yang diperuntukkan, seperti yang ditunjukkan di bawah:
print_info(apple='fruit', cabbage='vegetable') # apple = fruit # cabbage = vegetable
Kedua-dua args dan kwarg boleh digunakan bersama argumen bernama dalam definisi fungsi. Walau bagaimanapun, args mesti mendahului kwargs. Selain itu, args dan *kwargs juga boleh digunakan semasa panggilan fungsi untuk membongkar senarai atau kamus ke dalam argumen.
Sebagai contoh, fungsi yang menjangkakan tiga argumen kedudukan boleh dipanggil menggunakan senarai item seperti berikut:
def print_three(a, b, c): print(f'a = {a}, b = {b}, c = {c}') my_list = ['aardvark', 'baboon', 'cat'] print_three(*my_list) # a = aardvark, b = baboon, c = cat
Fleksibiliti ini menjadikan args dan *kwargs alat yang tidak ternilai dalam Python untuk mencipta fungsi yang serba boleh dan boleh disesuaikan.
Atas ialah kandungan terperinci Bagaimanakah *args dan kwargs Boleh Meningkatkan Fleksibiliti Fungsi Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!