akv*_*las 8 python attributes type-hinting
我有一个类,我希望属性的初始值为None:
class SomeClass:
def __init__(self):
self.some_attribute = None
Run Code Online (Sandbox Code Playgroud)
如何添加类型提示,以便IDE了解some_attribute通常属于AnotherClass哪种类型?
L3v*_*han 13
在Python 3.5中,你必须写
self.some_attribute = None # type: AnotherClass
Run Code Online (Sandbox Code Playgroud)
从Python 3.6开始,为变量添加了新的类型提示语法(PEP 526):
self.some_attribute: AnotherClass = None
Run Code Online (Sandbox Code Playgroud)
这可能会使每个类型检查系统都抱怨,因为None实际上不是AnotherClass的实例.相反,你可以使用typing.Union[None, AnotherClass],或简写:
from typing import Optional
...
self.some_attribute: Optional[AnotherClass] = None
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2449 次 |
| 最近记录: |