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