我有一些这样的代码:
@zhihu.log_attr
@zhihu.iter_factory('voters')
def voters(x):
from .People import People
return People(x)
但是IDE...Imgur图像
所以我尝试这样:
@zhihu.log_attr
@zhihu.iter_factory('voters')
def voters(x)->People:
from .People import People
return People(x)
但它不起作用。
NameError: name 'People' is not defined
如果在定义函数时未定义返回类型,则可以将返回类型指定为字符串:
@zhihu.log_attr
@zhihu.iter_factory('voters')
def voters(x) -> 'People':
from .People import People
return People(x)
PyCharm足够聪明,可以使用上面的方法来查找对象属性,希望Sublime也是如此。
编辑:这里有一个更详细的答案:类型注释中未定义名称
到目前为止,我们创建的函数都只是对传入的数据进行了处理,处理完了就结束。但实际上,在某些场景中,我们还需函数将处理的结果反馈回来,就好像主管向下级员工下达命令,让其去打印文件,员工打印好文件后并没有完成任务,还需要将文件交给主管。 Python中,用 def 语句创建函数时,可以用 return 语句指定应该返回的值,该返回值可以是任意类型。需要注意的是,return 语句在同一函数中可以出现多次
然后,在我的测试中,我执行调用的代码。而测试就是在那条线上失败了。我做错了什么?
问题内容: 我想在两个单独的变量中从函数返回两个值。例如: 我希望能够分别使用这些值。当我尝试使用时,它返回,这不是我想要的。 问题答案: 你不能返回两个值,但可以返回并在调用后解压缩它: 在线意味着创建一个元组。你也可以使用括号,例如,但是元组是用逗号创建的,因此括号不是必需的。但是,你可以使用parens来提高代码的可读性或将元组分成多行。这同样适用于。 如果要返回两个以上的值,请考虑使用命名
本文向大家介绍python 解决函数返回return的问题,包括了python 解决函数返回return的问题的使用技巧和注意事项,需要的朋友参考一下 定义一个带返回值的函数,需要使用return语句在调用这个函数时返回一个目标值,当没有return时,函数默认返回None。 分析下面两个程序: out: 2017-9-25 out: 2017-9-25 None 对于第一个程序,仅仅调用了'no
问题内容: 选项:使用元组 考虑下面这个简单的例子: 但是,随着返回值的数量增加,这很快就会成为问题。如果要返回四个或五个值怎么办?当然,你可以继续修改它们,但是很容易忘记哪个值在哪里。在任何想要接收它们的地方打开它们的包装也是很丑陋的。 选项:使用字典 下一步的逻辑步骤似乎是引入某种“记录符号”。在Python中,一种明显的方法是使用dict。 考虑以下: (请注意,y0,y1和y2只是抽象标识