Tri*_*max 1 python types exception type-hinting python-3.x
在其他语言中,任何类似示例都会引发类型错误.为什么不用Python?
>>> def foo(a:int) -> str:
return a+1
>>> foo(5)
6
Run Code Online (Sandbox Code Playgroud)
Mar*_*ers 10
Python中的类型提示是一个可选的附加功能,可以帮助静态代码分析和编辑器.
请注意,此PEP仍然明确不会阻止其他注释使用,也不会要求(或禁止)任何特定的注释处理,即使它们符合此规范.它简单地实现了更好的协调,正如PEP 333为Web框架所做的那样.
和
虽然这些注释在运行时通过通常的
__annotations__属性可用,但在运行时不会进行类型检查.相反,该提议假定存在一个单独的离线类型检查器,用户可以自动运行其源代码.从本质上讲,这种类型的检查器就像一个非常强大的linter.(虽然个别用户当然可以在运行时使用类似的检查器来进行设计合同执行或JIT优化,但这些工具还不够成熟.)
请注意,类型提示是Python的一个新增功能,PEP旨在帮助协调,而不是强制对语言进行运行时类型检查.
Python 不是静态类型语言,它仍然是非常动态类型的.您可能会将此功能与静态类型语言中的类型声明混淆.
将来,Python 可能会增加对严格模式的支持(类似于Hack的做法),但现在不在桌面上.
| 归档时间: |
|
| 查看次数: |
745 次 |
| 最近记录: |