Apakah yang dilakukan oleh Asterisk (*) dalam Fungsi Python?

Patricia Arquette
Lepaskan: 2024-11-26 10:04:08
asal
556 orang telah melayarinya

What Does the Asterisk (*) Do in Python Functions?

Apakah Kepentingan Asterisk (*) dalam Python?

Asterisk (*) mempunyai tujuan penting dalam Python, setanding kepada penggunaannya dalam C. Dalam Python, ia berfungsi berbilang peranan dalam definisi fungsi dan panggilan.

Definisi Fungsi dengan Argumen Asterisk:

Dalam definisi fungsi, sintaks *pengecam memperkenalkan parameter yang mengumpulkan sebarang argumen kedudukan yang tinggal ke dalam tuple. Jika tiada hujah berlebihan disediakan, ia lalai kepada tupel kosong. Takrif fungsi berikut menunjukkan konsep ini:

def get(*a, **kw)
Salin selepas log masuk

Di sini, a mengumpul sebarang hujah kedudukan tambahan, manakala kw mengumpulkan sebarang hujah kata kunci yang berlebihan ke dalam kamus.

Panggilan Fungsi dengan Asterisk Hujah:

Apabila memanggil fungsi, asterisk boleh digunakan untuk membongkar hujah yang disimpan dalam tupel atau kamus. Contohnya:

Argumen Kedudukan:

def foo(a, b, c, *args):
    print(a, b, c, args)

args_tuple = ("testa", "testb", "testc", "excess")
foo(*args_tuple)  # unpacks positional arguments from a tuple
Salin selepas log masuk

Argumen Kata Kunci:

def foo(a, b, c, **args):
    print(a, b, c, args)

arg_dict = {"a": "testa", "b": "testb", "c": "testc", "excessarg": "string"}
foo(**arg_dict)  # unpacks keyword arguments from a dictionary
Salin selepas log masuk

Pengendali asterisk membenarkan pengendalian fleksibel lebihan hujah dalam kedua-dua definisi fungsi dan panggilan. Untuk penjelasan yang mendalam, rujuk Rujukan Bahasa Python di bawah "Definisi Fungsi" dan "Panggilan Fungsi."

Atas ialah kandungan terperinci Apakah yang dilakukan oleh Asterisk (*) dalam 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