日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

python参数的可变参数与关键词参数

發(fā)布時(shí)間:2025/3/20 python 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python参数的可变参数与关键词参数 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

可變參數(shù)與關(guān)鍵詞參數(shù)

def can_form_triangle(a, b, c):print(f'a = {a}, b = {b}, c = {c}')return a + b > c and b + c > a and a + c > b

1.在沒(méi)有特殊處理的情況下,函數(shù)的參數(shù)都是位置參數(shù),也就是意味著傳入的參數(shù)必須對(duì)號(hào)入座,
傳入的參數(shù)值1,2,3會(huì)依次賦值給a,b,c
2.可以使用*args來(lái)接收任意數(shù)量的參數(shù),但是*args不能接收帶參數(shù)名的參數(shù),

調(diào)用函數(shù)傳入?yún)?shù)不指定參數(shù)名按位置對(duì)號(hào)入座

print(can_form_triangle(1, 2, 3))

調(diào)用函數(shù)通過(guò)“參數(shù)名=參數(shù)值”的形式按順序傳入?yún)?shù)

print(can_form_triangle(a=1, b=2, c=3))

調(diào)用函數(shù)通過(guò)“參數(shù)名=參數(shù)值”的形式不按順序傳入?yún)?shù)

print(can_form_triangle(c=3, a=1, b=2)) def calc(*args):result = 0for arg in args:result += argreturn result

這樣的calc函數(shù)只能接收不帶參數(shù)名的傳參,
如果參數(shù)中帶有參數(shù)名,則會(huì)出現(xiàn)typeerror

例如不能接收這樣的傳參

print(calc(a=1,b=2,c=3))

如果避免此類問(wèn)題,一般情況下,是將
改寫(xiě)成下面的形式

''' 學(xué)習(xí)中遇到問(wèn)題沒(méi)人解答?小編創(chuàng)建了一個(gè)Python學(xué)習(xí)交流QQ群:531509025 尋找有志同道合的小伙伴,互幫互助,群里還有不錯(cuò)的視頻學(xué)習(xí)教程和PDF電子書(shū)! ''' def calc(*args: any, **kwargs: any) -> int:result = 0for arg in args:result += argfor value in kwargs.values():result += valuereturn resultprint(calc()) # 0 print(calc(1, 2, 3)) # 6 print(calc(a=1, b=2, c=3)) # 6 print(calc(1, 2, c=3, d=4)) # 10

不帶參數(shù)名的參數(shù)(位置參數(shù))必須出現(xiàn)在帶參數(shù)名的參數(shù)(關(guān)鍵字參數(shù))之前,否則會(huì)出現(xiàn)一場(chǎng)報(bào)錯(cuò)

總結(jié)

以上是生活随笔為你收集整理的python参数的可变参数与关键词参数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。