我正在尝试在Python 2.7.11的类文件中创建main()
并运行它,但Python声称我需要传递main()
一个参数。
def main(self):
howManyBadCrops = BadCropsDetector() # My class
# a bunch of stuff goes here that runs the module....
if __name__ == "__main__":
main()
为什么会这样?这是我的终端输出:
Traceback (most recent call last):
File "badCropsDetector.py", line 11, in <module>
class BadCropsDetector:
File "badCropsDetector.py", line 66, in BadCropDetector
main()
TypeError: main() takes exactly 1 argument (0 given)
答案 0 :(得分:5)
在这种情况下,您不需要self
的函数定义中的main
参数。这是因为main
显然是一个模块级函数,当你编写一个包含在类中的函数(即方法)时,你只需要指定self
。 / p>
只需从定义中删除它:
def main():