所以我的代码是:
class myClass:
@staticmethod
def func():
print('foo')
if __name__ == "__main__":
myClass.func()
但是当我运行它时,我收到以下错误:
Traceback (most recent call last):
File "myClass.py", line 1, in <module>
class myClass:
File "myClass.py", line 8, in myClass
myClass.func()
NameError: name 'myClass' is not defined
我该如何解决这个问题?
答案 0 :(得分:2)
这是一个缩进问题。
class myClass:
@staticmethod
def func():
print('foo')
if __name__ == "__main__":
myClass.func()
以上内容在Python解释器中可以正常工作。目前,在您的代码中,它尝试在myClass.func()
定义内if
块内运行class
,即在尝试创建myClass
时,它正在尝试运行myClass.func()
并且因为您的帖子中提到的错误而失败。
答案 1 :(得分:1)
class myClass:
@staticmethod
def func():
print('foo')
if __name__ == "__main__":
myClass.func()