Python PyCharm类型暗示返回类型

Python PyCharm类型暗示返回类型,python,pycharm,Python,Pycharm,我无法获取返回类型的键入提示以生成任何警告。例如,以下代码不生成警告: def foo(): """ :rtype : bool """ return "bar" # Returning wrong type x, y = foo() # Incorrectly expecting tuple 返回类型是否生成警告,还是仅用于代码完成?对函数参数使用类型提示时的类型警告按预期工作。Python是2.7,PyCharm是4.5.3。返回类型仅

我无法获取返回类型的键入提示以生成任何警告。例如,以下代码不生成警告:

def foo():
    """
    :rtype : bool
    """
    return "bar"    # Returning wrong type

x, y = foo()        # Incorrectly expecting tuple

返回类型是否生成警告,还是仅用于代码完成?对函数参数使用类型提示时的类型警告按预期工作。Python是2.7,PyCharm是4.5.3。

返回类型仅用于代码完成,您所做的工作彻底混淆了PyCharm,不知道您真正想要返回什么

此外,如果字符串长度为2个字符,
x,y=
是有效的,所以您的最后一条语句不是无效的

In[3]: x, y = "ac"
In[4]: x
Out[4]: 'a'
In[5]: y
Out[5]: 'c'

您可以使用
->
如下提示返回类型:

def hello(name: str) -> str:
    return 'hello '+name
类型提示只是帮助IDE的提示。这些类型没有强制执行。您可以将变量的提示添加为
str
,并将
int
设置为如下所示:

def hello(name: str) -> str:
    return 'hello '+name
a:str='提示为str的变量'
a=5#看,我们可以设置一个整数

PyCharm将警告您,但您仍然可以运行代码。因为这些只是暗示。Python不是类型严格的语言。相反,它采用了动态输入。

我相信这只是为了完成代码。你会错过警告。这些警告应该在哪里发出?python应该发出它们吗?或者你想让pyCharm释放它们?@f.rodrigues-谢谢你的确认