Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah *args dan kwargs Boleh Meningkatkan Fleksibiliti Fungsi Python?

Bagaimanakah *args dan kwargs Boleh Meningkatkan Fleksibiliti Fungsi Python?

Linda Hamilton
Lepaskan: 2024-12-18 02:21:14
asal
525 orang telah melayarinya

How Can *args and kwargs Enhance Python Function Flexibility?

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}')
Salin selepas log masuk

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
Salin selepas log masuk

**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}')
Salin selepas log masuk

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
Salin selepas log masuk

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
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan