Python怎麼傳遞不定引數
不定長位置引數
使用*arg_name定義的位置引數,表示任意多個位置引數;Python標準庫中習慣使用*args來命名不定長位置引數,當然我們可以自定義
這個名稱;不定長位置引數的型別為元組;
Python 允許在形參前面新增一個星號(*),這樣就意味著該引數可接收多個引數值,多個引數值被當成元組傳入。
下面程式定義了一個形參個數可變的函式:
# 定義了支援引數收集的函式 def test(a, *books) : print(books) # books被當成元組處理 for b in books : print(b) # 輸出整數變數a的值 print(a) # 呼叫test()函式 test(5 , "php中文網" , "Python教程")
執行上面程式,將看到如下執行結果:
('php中文網', 'Python教程') php中文網 Python教程 5
從上面的執行結果可以看出,當呼叫 test() 函式時,books 引數可以傳入多個字串作為引數值。從 test() 的函式體程式碼來看,引數收集的本質就是一個元組: Python 會將傳給 books 引數的多個值收整合一個元組。
Python 允許個數可變的形參可以處於形參列表的任意位置(不要求是形參列表的最後一個引數),但 Python 要求一個函式最多隻能帶一個支援“普通”引數收集的形參。例如如下程式:
# 定義了支援引數收集的函式 def test(*books ,num) : print(books) # books被當成元組處理 for b in books : print(b) print(num) # 呼叫test()函式 test("php中文網", "Python教程", num = 20
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2370/viewspace-2835546/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Ruby方法傳不定引數
- vue事件帶預設引數,怎麼傳遞其他引數Vue事件
- [Python] 傳遞引數前面的*或**Python
- 引數傳遞
- python中函式的引數傳遞Python函式
- Python的函式引數傳遞:傳值?引用?Python函式
- python怎麼傳入不確定引數Python
- Mybatis引數傳遞MyBatis
- Python語法—函式及引數傳遞Python函式
- [思] 當需要傳遞多個不定引數時,該如何設計 JavaScript 函式?JavaScript函式
- Python引數傳遞,既不是傳值也不是傳引用Python
- python不定長引數如何呼叫函式?Python函式
- React事件傳遞引數React事件
- 路由元件傳遞引數路由元件
- JS的方法引數傳遞(按值傳遞)JS
- Python3之函式的引數傳遞與引數定義Python函式
- Java不定長引數Java
- 引數傳遞方式必須是const引用傳遞
- 引數的定義和引數的傳遞
- Shell學習【引數傳遞】
- linux中main引數傳遞LinuxAI
- 利用閉包傳遞引數
- JavaScript函式傳遞引數JavaScript函式
- out,ref,params引數傳遞
- 請求引數的傳遞
- 函式的引數傳遞函式
- t-on-click 傳遞引數
- 『無為則無心』Python函式 — 29、Python變數和引數傳遞Python函式變數
- 使用python指令碼傳遞引數:(三種方式可收藏)Python指令碼
- drf serializer 字首 get 是什麼? 如何傳遞引數?
- 函式作為引數傳遞函式
- C++引數的傳遞方式C++
- 引數傳遞機制之JWTJWT
- JAVA基礎之-引數傳遞Java
- 函式引數傳遞及返回函式
- Java方法04:命令列傳遞引數、可變引數Java命令列
- 面試官問:Go 中的引數傳遞是值傳遞還是引用傳遞?面試Go
- 帶你深入理解傳遞引數