python 中,* 和 ** 有以下四類用法。
* 代表乘法
** 代表乘方
>>> 2 * 3
6>>> 2 ** 3
8
*args 和 **kwargs 主要用於函式定義。
可以將不確定數量的引數傳遞給乙個函式。不確定的意思:預先不知道函式引數個數,即 函式呼叫者會傳遞多少個引數, 在這種場景下使用以上關鍵字。 *args 和**kwargs 是乙個約定俗成的命名約定。
python函式傳遞引數有兩種方式:
*args 與 **kwargs 兩者都是 python 的可變引數,有以下區別:
如果同時使用 *args 和 **kwargs 時,必須 *args 引數列要在 **kwargs 之前。
def fun(*args, **kwargs):
print('args=', args)
print('kwargs=', kwargs)
fun(1, 2, 3, 4, a='a', b='b', c='c', d='d')
輸出:args= (1, 2, 3, 4)
kwargs=
在函式的形參是定長引數的情況下,也可使用 *args 和 **kwargs 呼叫函式,這類似對元組和字典進行解引用:
def fun(data1, data2, data3):
print("data1: ", data1)
print("data2: ", data2)
print("data3: ", data3)
args = ("one", 2, 3)
fun(*args)
輸出:data1: one
data2: 2
data3: 3
kwargs =
fun(**kwargs)
輸出:data1: 3
data2: 2
data3: one
說明:序列解包沒有 **。
>>> a, b, *c = 5, 6, 1, 0
>>> a
5 >>> b
6 >>> c
[1, 0]
python3運算子 Python3 運算子
python3 運算子 python3 支援以下型別運算子 算術運算子 比較 關係 運算子 賦值運算子 邏輯運算子 位運算子 成員運算子 身份運算子 運算子優先順序 算術運算 a b 2,3 運算子說明 示例加 將兩個物件相加 a b 結果 5 減 將兩個物件相減 a b 結果 1 乘 將兩個物件相...
python3運算子 Python3運算子
什麼是運算子?本章節主要說明python的運算子。舉個簡單的例子 4 5 9。例子中,4 和 5 被稱為運算元,稱為運算子。python語言支援以下型別的運算子 算術運算子 比較 關係 運算子 賦值運算子 邏輯運算子 位運算子 成員運算子 身份運算子 運算子優先順序 接下來讓我們乙個個來學習pyth...
Python3 和 運算子
在 python 中,和 具有語法多義性,具體來說是有四類用法。1.算數運算 代表乘法 代表乘方 2 5 10 2 5 32 2.函式形參 args 和 kwargs 主要用於函式定義。你可以將不定數量的引數傳遞給乙個函式。不定的意思是 預先並不知道,函式使用者會傳遞多少個引數給你,所以在這個場景下...