当我的python函数存在于同一文件中时,为什么未定义它?

发布于 2021-01-29 14:55:22

我有一个简单的函数,我将其称为myFunction。它使用两个参数,对其进行一些计算,然后返回结果。

我也有一个类,MyClass其中包含一个具有如下标头的构造函数:

__init__(self, bar, fun=myFunction):

当我尝试运行此类中的任何内容时,出现以下错误:

MyClass
    def __init__(self, bar, fun=myFunction):
NameError: name 'myFunction' is not defined

如果删除此类,则可以在Python Shell中使用myFun,那怎么办?

关注者
0
被浏览
85
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您尚未显示实际代码,因此很难确定,但是我敢肯定myFunction在之后定义MyClass__init__定义方法时将评估默认值表达式,因此myFunction必须在此时定义。以后定义它为时已晚。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看