我使用了以下代码
class FooBar:
def __init__(self):
self.x = 0
self.y = 0
def __init__(self, x, y, z):
self.x = x
self.y = y
self.z = z
我将上述内容保存在FooBar.py
当我使用时,
import FooBar
p = FooBar()
错误说module object not callable
。是什么原因?
答案 0 :(得分:1)
第二次def
重新声明__init__
方法。在python中,你不能重载方法。
答案 1 :(得分:1)
因为您导入的FooBar
是模块,而不是类。
替换:
import FooBar
使用:
from FooBar import FooBar
或者,如果您愿意,请使用:
import FooBar
# First FooBar is the module, second is the class within the module.
p = FooBar.FooBar()