Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Apakah cara berbeza aksara asterisk (*) digunakan dalam fungsi Python?

Apakah cara berbeza aksara asterisk (*) digunakan dalam fungsi Python?

Susan Sarandon
Susan Sarandonasal
2024-11-09 12:10:02257semak imbas

What are the different ways the asterisk (*) character is used in Python functions?

Apakah Kepentingan Aksara Asterisk (*) dalam Python?

Dalam Python, simbol asterisk (*) mengandungi satu unik kepentingan dalam definisi dan panggilan fungsi.

Definisi Fungsi:

Dalam definisi fungsi, diikuti dengan pengecam (cth., pengecam) menunjukkan bahawa fungsi boleh mengambil bilangan hujah kedudukan yang sewenang-wenangnya. Argumen-argumen ini akan dikumpulkan ke dalam tuple yang dipanggil pengecam.

Panggilan Fungsi:

  • juga boleh digunakan dalam panggilan fungsi untuk menentukan bahawa fungsi harus membongkarnya hujah kedudukan atau kata kunci daripada jujukan atau kamus.

Argumen Kedudukan:

*args menangkap sebarang argumen kedudukan berlebihan yang dihantar ke fungsi. Argumen ini disimpan sebagai tuple dalam pengecam yang ditentukan selepas asterisk.

Contoh:

def sum_args(*nums):
    total = 0
    for num in nums:
        total += num
    return total

Panggilan fungsi berikut akan berfungsi dengan definisi di atas:

sum_args(1, 2, 3)  # Returns 6
sum_args(1, 2, 3, 4, 5)  # Returns 15

Argumen Kata Kunci:

**kwargs menangkap sebarang hujah kata kunci berlebihan yang dihantar ke fungsi. Argumen ini disimpan sebagai kamus dalam pengecam yang ditentukan selepas asterisk.

Contoh:

def print_info(**person):
    for key, value in person.items():
        print(f"{key}: {value}")

Panggilan fungsi berikut akan berfungsi dengan definisi di atas:

print_info(name="John", age=30)  # Prints "name: John", "age: 30"
print_info(name="Mary", age=25, city="Boston")  # Prints "name: Mary", "age: 25", "city: Boston"

Membongkar Jujukan dan Kamus:

  • juga boleh digunakan dalam panggilan fungsi untuk membongkar tuple atau kamus ke dalam argumen fungsi.

Contoh (Unpack Tuple):

def sum_nums(a, b, c):
    return a + b + c

args = (1, 2, 3)
sum_nums(*args)  # Returns 6

Contoh (Unpack Dictionary):

def print_details(**details):
    print("Name:", details["name"])
    print("Age:", details["age"])

kwargs = {"name": "Bob", "age": 35}
print_details(**kwargs)  # Prints "Name: Bob", "Age: 35"

Dengan memahami kepentingan daripada asterisk (*) dalam Python, anda boleh bekerja dengan berkesan dengan argumen kedudukan dan kata kunci dalam definisi dan panggilan fungsi.

Atas ialah kandungan terperinci Apakah cara berbeza aksara asterisk (*) digunakan dalam fungsi Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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