python中的pyi


本文值代表個人見解,若有不當之處,希望大家指出。

a.pyi文件可以對a.py文件中的數據類型進行指定,
指定以后,如果調用數據類型不規范,會報錯。

比如a.py文件內容如下:

def greeting(name):  # 注意此處未指定數據類型
    return "Hello" + name

a.pyi文件如下:

def greeting(name: str) -> str:  # 指定函數數據類型,函數名一樣,其他不做任何操作
    pass

寫好上面兩個代碼后,在pycharm中會有如下展示方式:

可以看到在兩個對應的函數前面有 *星號,點擊星號可以跳轉到對應位置

調用a.py中的greeting函數

# 在a.py中加上下面的代碼運行
print(greeting(1258))

# 會得到如下報錯
TypeError: can only concatenate str (not "int") to str  # 因為指定了參數傳入是str類型,因為傳入的1258是int類型,所以報錯

修改數據類型后重新調用

# 傳入str類型數據
print(greeting('1258'))

# 此時代碼正確執行,輸出:
Hello1258


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM