Python 3:“;名称错误:名称';功能';“未定义”;
运行 使用Python3.6.2Python 3:“;名称错误:名称';功能';“未定义”;,python,python-3.x,pycharm,Python,Python 3.x,Pycharm,运行 使用Python3.6.2 def foo(bar: function): bar() foo(lambda: print("Greetings from lambda.")) 输出Python中没有定义名称函数,没有。注释仍然是Python表达式,必须引用有效名称 您可以改为使用类型暗示,表示条是可调用的;使用: 这定义了一个不带参数的可调用类型,其返回值可以是任何值(我们不关心)。谢谢,我希望它是有效的,因为通过print(myfunction)检查functions类。产
def foo(bar: function):
bar()
foo(lambda: print("Greetings from lambda."))
输出
Python中没有定义名称函数
,没有。注释仍然是Python表达式,必须引用有效名称
您可以改为使用类型暗示,表示条
是可调用的;使用:
这定义了一个不带参数的可调用类型,其返回值可以是任何值(我们不关心)。谢谢,我希望它是有效的,因为通过
print(myfunction)检查functions类。
产生
@qwertz:当然,但这并不意味着存在引用该类型的全局名称function
。
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'function' is not defined
def myfunction():
pass
print(myfunction.__class__)
from typing import Any, Callable
def foo(bar: Callable[[], Any]):
bar()