我有一个简单的函数,我将其称为myFunction。它使用两个参数,对其进行一些计算,然后返回结果。
myFunction
我也有一个类,MyClass其中包含一个具有如下标头的构造函数:
MyClass
__init__(self, bar, fun=myFunction):
当我尝试运行此类中的任何内容时,出现以下错误:
MyClass def __init__(self, bar, fun=myFunction): NameError: name 'myFunction' is not defined
如果删除此类,则可以在Python Shell中使用myFun,那怎么办?
您尚未显示实际代码,因此很难确定,但是我敢肯定myFunction在之后定义MyClass。__init__定义方法时将评估默认值表达式,因此myFunction必须在此时定义。以后定义它为时已晚。
__init__