2015-08-28 84 views
1

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

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

x, y = foo()  # Incorrectly expecting tuple 

不要返回类型生成警告,或者他们只用于代码完成?使用类型提示功能参数时输入警告按预期工作。 Python是2.7,PyCharm是4.5.3。

+1

我相信这是唯一的代码完成。 –

+0

您错过了警告。这些警告应该放在哪里? python应该发射它们吗?或者你想让pyCharm发射它们? – guettli

+0

@ f.rodrigues - 感谢您的确认 – stdout

回答

0

返回类型仅用于代码完成,您所做的事已彻底混淆了PyCharm的实际返回结果。

此外,如果字符串长度为2个字符,则x,y = <string>有效,因此您的最后一个语句不是无效的。

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

您可以使用->暗示的返回类型是这样的:

def hello(name: str) -> str: 
    return 'hello '+name