首頁 >後端開發 >Python教學 >Python 函數中的星號 (*) 有何作用?

Python 函數中的星號 (*) 有何作用?

Patricia Arquette
Patricia Arquette原創
2024-11-26 10:04:08587瀏覽

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

星號 (*) 在 Python 中的意義是什麼?

星號 (*) 在 Python 中具有重要用途,可比它在 C 中的用法。在 Python 中,它在函數定義和呼叫。

帶星號參數的函數定義:

在函數定義中,語法*identifier 引入一個參數,該參數將所有剩餘的位置參數收集到一個元組中。如果沒有提供多餘的參數,則預設為空元組。下面的函數定義示範了這個概念:

def get(*a, **kw)

這裡,a 收集所有額外的位置參數,而 kw 將所有多餘的關鍵字參數收集到字典中。

帶星號的函數呼叫參數:

呼叫函數時,可以使用星號來解壓縮儲存的參數在元組或字典中。例如:

位置參數:

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

關鍵字參數:

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

星號運算子允許靈活處理函數定義和呼叫中的多餘參數。如需深入解釋,請參閱《Python 語言參考》中的「函數定義」和「函數呼叫」。

以上是Python 函數中的星號 (*) 有何作用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn