亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python函數參數匹配模型通用規則keyword-only參數的示例分析

發布時間:2021-08-25 11:20:04 來源:億速云 閱讀:92 作者:小新 欄目:開發技術

小編給大家分享一下Python函數參數匹配模型通用規則keyword-only參數的示例分析,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

Python3對函數參數的排序規則更加通用化了,即Python3 keyword-only參數,該參數即為必須只按照關鍵字傳遞而不會有一個位置參數來填充的參數。該規則在處理人一多個參數是很有用的。

keyword-only

kword_only(1, 2, 3, c=4)
print('-' * 20)
kword_only(a=1, c=3)

示例結果:

1 (2, 3) 4
--------------------
1 () 3

在 *args 之后的參數都需要在調用中使用關鍵字的方式傳遞,否則會拋出異常。

def kword_only(a, *b, c):
  print(a, b, c)
kword_only(1, 2, 3)

異常結果:

kword_only(1, 2, 3)
TypeError: kword_only() missing 1 required keyword-only argument: 'c'

我們也可以在參數列表中使用一個 * 字符,表示函數不會接受變量長度的參數列表,而是要求 * 后面的參數都需要使用關鍵字參數的方式傳遞。

def kword_only(a, *, b, c):
  print(a, b, c)
kword_only(1, b=2, c=3)
print('-'*20)
kword_only(b=2, c=3, a=1)

示例結果:

1 2 3
--------------------
1 2 3

我們可以看到 a 可以利用位置參數進行傳遞,但是 b 、 c 必須通過關鍵字參數傳遞,否則就會拋出異常。

def kword_only(a, *, b, c):
  print(a, b, c)
kword_only(1, 2, 3)

異常結果:

kword_only(1, 2, 3)
TypeError: kword_only() takes 1 positional argument but 3 were given

當然我們,可以通過對keyword-only參數使用默認值,這樣例中的 a 仍可以通過位置參數或者關鍵字參數傳遞,而 b 、 c 就是可選的了,當然如果需要傳遞的話仍然是要利用關鍵字參數進行傳遞的。

def kword_only(a, *, b=2, c=3):
  print(a, b, c)
kword_only(1)
print('-'*20)
kword_only(a=1)
print('-'*20)
kword_only(b=22, c=33, a=11)

示例結果:

1 2 3
--------------------
1 2 3
--------------------
11 22 33

看完了這篇文章,相信你對“Python函數參數匹配模型通用規則keyword-only參數的示例分析”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

印江| 田东县| 唐海县| 高唐县| 黔南| 财经| 红原县| 广安市| 兴宁市| 新干县| 乐安县| 高清| 宣汉县| 武川县| 循化| 阜平县| 开平市| 阿拉善左旗| 奇台县| 高州市| 改则县| 平遥县| 海林市| 武冈市| 西乡县| 屏东市| 侯马市| 蓬莱市| 重庆市| 浮梁县| 托克托县| 响水县| 阳朔县| 胶南市| 长兴县| 巴林左旗| 伽师县| 从江县| 昆山市| 左云县| 紫阳县|