繁体   English   中英

如何在Python 3.5中键入提示属性?

[英]How can I type hint an attribute in Python 3.5?

我有一个类,我希望属性的初始值为None

class SomeClass:
    def __init__(self):
        self.some_attribute = None

如何添加类型提示,以便IDE了解some_attribute通常是AnotherClass类型?

在Python 3.5中,你必须写

self.some_attribute = None  # type: AnotherClass

从Python 3.6开始,为变量添加了新的类型提示语法( PEP 526 ):

self.some_attribute: AnotherClass = None

这可能会使每个类型检查系统都抱怨,因为None实际上不是AnotherClass的实例。 相反,您可以使用typing.Union[None, AnotherClass]或简写:

from typing import Optional
...
self.some_attribute: Optional[AnotherClass] = None

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM