創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!
成都創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的昂仁網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!小編給大家分享一下python傳入不定長參數(shù)的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
剛開始接觸Python時(shí),向函數(shù)傳遞最多的為對(duì)應(yīng)參數(shù),所謂說的一個(gè)蘿卜一個(gè)坑
def test_arg(a,b): print(a,b)
漸漸地發(fā)現(xiàn),在定義函數(shù)時(shí),我們并不知道函數(shù)調(diào)用的時(shí)候會(huì)傳遞多少個(gè)參數(shù),這個(gè)就是今天主題提出的問題,即向函數(shù)傳遞不定數(shù)量的參數(shù)
def test1_var_args(*arg2): print("test1_var_args") print(arg2) def test2_var_arg(**arg): print("test2_var_args") print(arg) def test3_var_args(arg1,*arg2): print("test3_var_args") print(arg1) print(arg2) def test4_var_args(arg1,**arg2): print("test4_var_args") print(arg1) print(arg2) def test5_var_args(arg1,*arg2,**arg3): print("test5_var_args") print(arg1) print(arg2) print(arg3) def test6_var_args(arg1, arg2="moren",*arg3, **arg4): print("test6_var_args") print(arg1) print(arg2) print(arg3) print(arg4) if __name__=="__main__": test_arg(1,2) test1_var_args() test1_var_args(1,2,3,4) test2_var_arg() test2_var_arg(a="1",b='2') test3_var_args(1) test3_var_args(1,2,3,4) test4_var_args(1,a="2",b="3") test5_var_args(1,2,3,4,a="5",b="6") test6_var_args(1,a="2",b="3" ,c="4") test6_var_args(1, arg2="3", c="4") #結(jié)果 test1_var_args () test1_var_args (1, 2, 3, 4) test2_var_args {} test2_var_args {'a': '1', 'b': '2'} test3_var_args 1 () test3_var_args 1 (2, 3, 4) test4_var_args 1 {'a': '2', 'b': '3'} test5_var_args 1 (2, 3, 4) {'a': '5', 'b': '6'} test6_var_args 1 moren () {'a': '2', 'b': '3', 'c': '4'} test6_var_args 1 3 () {'c': '4'}
上述例子可知:
前面帶有 *表示為一個(gè)不定數(shù)量的元組參數(shù),默認(rèn)是()
前面帶有**表示為一個(gè)不定數(shù)量的字典參數(shù),默認(rèn)是{}
多種參數(shù)混合使用時(shí),需要注意順序,一般為先位置、再關(guān)鍵字、再不定數(shù)量的元組參數(shù)、再不定數(shù)量的字典參數(shù)
特別注意的是,當(dāng)前帶有不定參數(shù)的函數(shù)傳遞列表或者字典時(shí),切記,一定要解包否則報(bào)錯(cuò)
lis=[1,2,3]def parse(*args): for i in args: print(i)parse(*lis)#解包
看完了這篇文章,相信你對(duì)python傳入不定長參數(shù)的方法有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝各位的閱讀!