__init __()需要1个位置参数,但是给出了2个

时间:2017-03-18 15:36:00

标签: python django

我之前看过这个错误,这是由于一些非常不相关的东西,但我现在似乎无法通过这个尝试尽可能地尝试。整个错误似乎与我相矛盾,但Python最终可能在某种程度上是正确的。

所以,在foo / foo.py中我有一个类,其构造函数定义如下:

class Foo:
    def __init__(self, bars):
        self.bars = bars

在baz.py中我有以下内容:

from foo import foo
test_bars = [ a list of things ]
f = foo.Foo(test_bars)

引导我

__init__() takes 1 positional argument but 2 were given

我也尝试将构造函数转换为kwargs,如下所示

class Foo:
    def __init__(self, bars=None):
        self.bars = bars

然后调用

from foo import foo
test_bars = [ a list of things ]
f = foo.Foo(bars=test_bars)

并且这给出了关于身份不明的kwarg的错误。

foo / foo.py中包含的其他类似乎正常工作。

我没看到什么?

2 个答案:

答案 0 :(得分:0)

杜,我知道它必须是愚蠢的东西。我有一个较旧的类实现,在所有内容下面定义了相同的名称。当我向下滚动时,我才看到它。

答案 1 :(得分:0)

1)从foo import Foo输入错误的类foo,即foo。

2)foo.Foo应该只是Foo

Service