python中函數(shù)傳參的幾種實現(xiàn)方式
1.位置傳參
實參與形參的位置數(shù)量一致
def foo(a,b): #形參 print(a) if __name__ == '__main__': foo(1,2) #實參
2.關鍵字傳參
關鍵字傳參是指使用形參的名字來確定輸入的參數(shù)。
通過該方式指定實參時,不需要與形參位置一致,只要參數(shù)名稱寫正確即可
def foo(a,b): print(f"a是{a},b是") if __name__ == '__main__': foo(b=1,a=2) #結果 a是2,b是1
3.默認傳參
調用函數(shù)時,如果沒有指定某個參數(shù)將拋出異常,即在定義函數(shù)時,直接指定形式參數(shù)的默認值。
這樣,當沒有傳入?yún)?shù)時,則直接使用定義函數(shù)時設置的默認值。
語法格式如下:
def foo(a,b,c="我是默認參數(shù)"): print(f"a是:{a},b是:,c是:{c}") if __name__ == '__main__': foo(b=1,a=2)
4.可變參數(shù)傳參(*args,**kwargs)
--也可以叫不定長參數(shù)
- 1.*args可以接收任意長度的位置參數(shù)
- 2.**kwargs可以接收任意長度的關鍵字參數(shù)
- 3.*args和**kwargs同事使用時,*args(位置參數(shù))在前,**kwargs(關鍵字)參數(shù)在后。
形參為可變參數(shù)
def foo(*args, **kwargs): print("Positional arguments:") print(type(args)) for arg in args: print(arg) print("\nKeyword arguments:") print(type(kwargs)) for key, value in kwargs.items(): print(key + ": " + str(value)) if __name__ == '__main__': a = foo(1,2,3,4,5,name = "tom",age = 18) help(foo())
實參為可變參數(shù)
def foo(a,b,name,age): print(a,b,name,age) if __name__ == '__main__': a = [1,2] b = {"name":"tom","age":18} c = foo(*a,**b) #結果 1 2 tom 18
實參和形參都為可變參數(shù)
def foo(*args, **kwargs): print("Positional arguments:") print(type(args)) for arg in args: print(arg) print("\nKeyword arguments:") print(type(kwargs)) for key, value in kwargs.items(): print(key + ": " + str(value)) if __name__ == '__main__': a = [1,2,3,4,5] b = {"name":"tom","age":18} a = foo(*a,**b)
總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python?mxnet包成功安裝詳細指南(避免踩坑+報錯)
這篇文章主要給大家介紹了關于Python?mxnet包成功安裝的相關資料,包括創(chuàng)建Python環(huán)境、激活環(huán)境、安裝MXNet及其依賴項,以及在PythonCharm中配置Python解釋器,文中通過圖文介紹的非常詳細,需要的朋友可以參考下2024-12-12Python?Pyramid框架應用場景及高級特性實戰(zhàn)
Pyramid是一個靈活且強大的Python?web框架,廣泛用于構建各種規(guī)模的Web應用程序,本文將深度探索Pyramid框架,介紹其核心概念、應用場景以及一些高級特性2023-12-12解決pyinstaller 打包exe文件太大,用pipenv 縮小exe的問題
這篇文章主要介紹了解決pyinstaller 打包exe文件太大,用pipenv 縮小exe的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07pyecharts繪制時間輪播圖柱形圖+餅圖+玫瑰圖+折線圖
這篇文章主要介紹了pyecharts繪制時間輪播圖柱形圖+餅圖+玫瑰圖+折線圖,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下2022-06-06