欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python函數(shù)參數(shù)匹配模型通用規(guī)則keyword-only參數(shù)詳解

 更新時(shí)間:2019年06月10日 09:46:16   作者:若數(shù)  
Python3對函數(shù)參數(shù)的排序規(guī)則更加通用化了,即Python3 keyword-only參數(shù),該參數(shù)即為必須只按照關(guān)鍵字傳遞而不會(huì)有一個(gè)位置參數(shù)來填充的參數(shù)。這篇文章主要介紹了Python函數(shù)參數(shù)匹配模型通用規(guī)則keyword-only參數(shù),需要的朋友可以參考下

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

keyword-only

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

示例結(jié)果:

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

在 *args 之后的參數(shù)都需要在調(diào)用中使用關(guān)鍵字的方式傳遞,否則會(huì)拋出異常。

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

異常結(jié)果:

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

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

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)

示例結(jié)果:

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

我們可以看到 a 可以利用位置參數(shù)進(jìn)行傳遞,但是 b 、 c 必須通過關(guān)鍵字參數(shù)傳遞,否則就會(huì)拋出異常。

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

異常結(jié)果:

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

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

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)

示例結(jié)果:

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

總結(jié)

以上所述是小編給大家介紹的Python函數(shù)參數(shù)匹配模型通用規(guī)則keyword-only參數(shù)詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • pytorch:torch.mm()和torch.matmul()的使用

    pytorch:torch.mm()和torch.matmul()的使用

    今天小編就為大家分享一篇pytorch:torch.mm()和torch.matmul()的使用,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python?異步等待任務(wù)集合

    Python?異步等待任務(wù)集合

    這篇文章主要為大家介紹了Python?異步等待任務(wù)集合,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • 利用Python中SocketServer 實(shí)現(xiàn)客戶端與服務(wù)器間非阻塞通信

    利用Python中SocketServer 實(shí)現(xiàn)客戶端與服務(wù)器間非阻塞通信

    本文主要介紹了利用Python中SocketServer 實(shí)現(xiàn)客戶端與服務(wù)器間非阻塞通信示例代碼,具有很好的參考價(jià)值,需要的朋友一起來看下吧
    2016-12-12
  • python繪制BA無標(biāo)度網(wǎng)絡(luò)示例代碼

    python繪制BA無標(biāo)度網(wǎng)絡(luò)示例代碼

    今天小編就為大家分享一篇python繪制BA無標(biāo)度網(wǎng)絡(luò)示例代碼,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • 基于Python開發(fā)chrome插件的方法分析

    基于Python開發(fā)chrome插件的方法分析

    這篇文章主要介紹了基于Python開發(fā)chrome插件的方法,結(jié)合實(shí)例形式分析了Python實(shí)現(xiàn)chrome瀏覽器插件相關(guān)操作技巧,需要的朋友可以參考下
    2018-07-07
  • Python迭代器和生成器介紹

    Python迭代器和生成器介紹

    這篇文章主要介紹了Python迭代器和生成器介紹,本文分別用代碼實(shí)例講解了Python的迭代器和生成器,需要的朋友可以參考下
    2015-03-03
  • java中兩個(gè)byte數(shù)組實(shí)現(xiàn)合并的示例

    java中兩個(gè)byte數(shù)組實(shí)現(xiàn)合并的示例

    今天小編就為大家分享一篇java中兩個(gè)byte數(shù)組實(shí)現(xiàn)合并的示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • 使用Python將圖片轉(zhuǎn)正方形的兩種方法實(shí)例代碼詳解

    使用Python將圖片轉(zhuǎn)正方形的兩種方法實(shí)例代碼詳解

    這篇文章主要介紹了使用Python將圖片轉(zhuǎn)正方形的兩種方法,本文通過實(shí)例代碼給大家給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04
  • Flask模板繼承深入理解與應(yīng)用

    Flask模板繼承深入理解與應(yīng)用

    Flask中的模板可以繼承,通過繼承可以把模板中許多重復(fù)出現(xiàn)的元素抽取出來,放在父模板中,并且父模板通過定義block給子模板開一個(gè)口,子模板根據(jù)需要,再實(shí)現(xiàn)這個(gè)block
    2022-09-09
  • Django中F函數(shù)的使用示例代碼詳解

    Django中F函數(shù)的使用示例代碼詳解

    這篇文章主要介紹了Django中F函數(shù)的使用,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07

最新評論