Python 类型提示被忽略
Python Type Hints ignored
我是 python 的新手,正在尝试使用类型提示,但它们似乎只在某些情况下有效。它们似乎在 属性 return 类型上按预期工作,但是当我尝试将整数分配给字符串值(即 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 值(如预期的那样)。
我用的是pyCharm2018.3.2社区版,解释器是3.6
下面这个问题貌似类似,但是把constructor改成def __init__(self) -> None
的解决方法并没有改变什么。
类型提示,顾名思义,就是提示。 Python 如果您将不同的类型分配给变量,则不会引发错误。
Pycharm,然而,应该说它需要另一种变量类型。
正如@FHTMitchell 指出的 PyCharm
中的错误
我是 python 的新手,正在尝试使用类型提示,但它们似乎只在某些情况下有效。它们似乎在 属性 return 类型上按预期工作,但是当我尝试将整数分配给字符串值(即 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 值(如预期的那样)。
我用的是pyCharm2018.3.2社区版,解释器是3.6
下面这个问题貌似类似,但是把constructor改成def __init__(self) -> None
的解决方法并没有改变什么。
类型提示,顾名思义,就是提示。 Python 如果您将不同的类型分配给变量,则不会引发错误。
Pycharm,然而,应该说它需要另一种变量类型。
正如@FHTMitchell 指出的 PyCharm
中的错误