引數如何在python中明確型別?
想要在一堆資料中找出我們想要的檔案,如果所有檔案混在一起會比較難查詢。這就需要我們在放置檔案的初始就進行歸類,後期查詢的時候才不會困難重重。在python中很多小夥伴弄不清函式里的引數,會選擇置之不理。這樣對於我們後期的查詢不是很方便,今天小編就為大家帶來在python中明確函式引數型別的辦法,我們先從引數型別開始講起,具體如下:
在呼叫函式時,通常會傳遞引數,函式內部的程式碼保持不變,針對不同的引數處理不同的資料。
有位置傳參、關鍵字傳參、預設值引數、多值引數等。
1、引數傳遞
形參:定義 函式時的 引數變數
實參:呼叫 函式時,使用的引數變數
2、位置實參
按照引數位置,依次傳遞引數,這是最普通的方式。
3、關鍵字實參
如果不想嚴格按照順序傳遞引數,也可以按關鍵字傳遞。
4、預設引數
定義函式時,可以給 某個引數賦值一個預設值,具有預設值的引數就叫做預設引數
python中沒有型別宣告的語句,所以經常搞不清要給函式傳什麼型別的引數,比如下面經典的歧義函式:
def add(x, y): return x+y
在沒有任何說明的情況下,很難搞清楚x和y分別表示什麼,可以是兩個數值或字串:
print(add(2, 4)) print(add("w", "t"))
使用__annotations__註解
在函式形參的名字後面加上“:註解”,可以實現函式註解【1】功能:
def add(x:int, y:int): return x+y
對於較新的python版本可以直接使用函式的__annotations__屬性檢視註解內容:
print(add.__annotations__)
將會得到一個包含add的引數名稱和對應型別說明的字典:
{'x': <class 'int'>, 'y': <class 'int'>}
相信經過引數型別的學習,早進一步使用函式引數時,我們已經可以知道可以傳遞哪些型別的引數了。這裡把__annotations__註解引數的方法分享給大家,希望能對大家傳遞引數有所幫助。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2331/viewspace-2831821/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python 序列型別以及函式引數型別Python型別函式
- 如何在postman裡為型別為Edm.DateTime的OData引數指定正確格式的值Postman型別
- 解析型別引數型別
- 【Scala之旅】型別引數型別
- std::packaged_task<返回型別(引數型別)>Package型別
- Python小知識:如何在Python 3中轉換資料型別Python資料型別
- Java™ 教程(有界型別引數)Java型別
- C++型別引數化C++型別
- mybatis引數型別錯誤MyBatis型別
- 函式引數 引數定義函式型別函式型別
- Python數值型別Python型別
- Vue 2.5 & TypeScript: API 引數中的型別推導VueTypeScriptAPI型別
- PHP 用 Enum 限定引數型別PHP型別
- python怎麼傳入不確定引數Python
- double型別中可精確表達的最大正整數型別
- 實現Nest中引數的聯合型別校驗型別
- Java中的泛型程式設計:深入理解型別引數與型別邊界的使用Java泛型程式設計型別
- 可變資料型別不能作為python函式的引數資料型別Python函式
- Python中的引數遮蔽Python
- mysqldump引數說明MySql
- TOP引數說明
- 明確應用程式型別與資料庫結構設計型別資料庫
- makefile中的一些引數說明
- 桌上型電腦電源相關引數說明
- 從建構函式得到引數型別函式型別
- SpringBoot Get 請求接收 Date 型別引數Spring Boot型別
- Spring中@InitBinder將請求引數轉換為各自的型別Spring型別
- 在Vue3中如何為路由Query引數標註型別Vue路由型別
- Python工作筆記-往dll中傳入char*型別的引數並且如何接收char*的值Python筆記型別
- 如何在MonogoDB中檢視配置的引數值MonoGo
- python學習之變數型別Python變數型別
- python—資料型別和變數Python資料型別變數
- Python中的鴨子型別Python型別
- python疑問5:位置引數,預設引數,可變引數,關鍵字引數,命名關鍵字引數區別Python
- 0-4 Python 基礎資料型別-數值型別Python資料型別
- 如何在 Go 中將 int 型別轉為字串Go型別字串
- 在前端開發中,一種規劃引數型別的新思路前端型別
- SpringBoot 通過Converter轉化 date型別引數Spring Boot型別