您好,登錄后才能下訂單哦!
小編給大家分享一下python傳入不定長參數的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
剛開始接觸Python時,向函數傳遞最多的為對應參數,所謂說的一個蘿卜一個坑
def test_arg(a,b): print(a,b)
漸漸地發現,在定義函數時,我們并不知道函數調用的時候會傳遞多少個參數,這個就是今天主題提出的問題,即向函數傳遞不定數量的參數
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") #結果 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'}
上述例子可知:
前面帶有 *表示為一個不定數量的元組參數,默認是()
前面帶有**表示為一個不定數量的字典參數,默認是{}
多種參數混合使用時,需要注意順序,一般為先位置、再關鍵字、再不定數量的元組參數、再不定數量的字典參數
特別注意的是,當前帶有不定參數的函數傳遞列表或者字典時,切記,一定要解包否則報錯
lis=[1,2,3]def parse(*args): for i in args: print(i)parse(*lis)#解包
看完了這篇文章,相信你對python傳入不定長參數的方法有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。