Python类型提示被忽略

时间:2019-01-03 10:48:15

标签: python python-3.x pycharm python-typing

我是python的新手,正在尝试使用类型提示,但是它们似乎仅在某些情况下有效。它们似乎可以在属性返回类型上按预期方式工作,但是当我尝试为字符串值分配整数(即self._my_string = 4)时,没有任何问题报告。

class TypeHintTest(object):
    _my_string: str

    def __init__(self):
        self._my_string = 4  # no error

    @property
    def as_int(self) -> int:  
        return self._my_string  # Error : expected int got str

然后,所得对象包含一个int值(如预期的那样)。

我正在使用pyCharm 2018.3.2 Community Edition,解释器是3.6

enter image description here

以下问题似乎相似,但是将构造函数更改为def __init__(self) -> None的解决方案没有任何改变。 Python: All type hints errors in subclass constructure seems ignored

2 个答案:

答案 0 :(得分:2)

顾名思义,

类型提示是提示。如果为变量分配其他类型,Python不会引发错误。
Pycharm,应该说它需要另一个变量类型。

答案 1 :(得分:1)

@FHTMitchell指出了它在PyCharm中的错误

请参阅Bug tracker entry