python接受1个位置参数,但给出了2个[重复]

Posted

技术标签:

【中文标题】python接受1个位置参数,但给出了2个[重复]【英文标题】:python takes 1 positional argument but 2 were given [duplicate] 【发布时间】:2019-04-06 03:37:48 【问题描述】:

我有一个类调用另一个类来使用它的功能

main.py
--------------------
class MyClass():

    def main(self, arg):
        from lib.otherclass import OtherClass
        otherClass = OtherClass() 

        result = otherClass.prepare.importImage(image)


myClass = MyClass()
final = myClass(image)

我收到此错误

importImage() takes 1 positional argument but 2 were given

这是其他类的样子:

class OtherClass():
    def __init__(self):
        self.prepare = Prepare()

class Prepare():

    def importImage(image):
        blah blah blah

我该如何解决这个问题?

【问题讨论】:

importImage 缺少 self 参数。 【参考方案1】:

要么:

class Prepare():

    def importImage(self, image):

或:

class Prepare():

    @staticmethod
    def importImage(image):

见python takes 1 positional argument but 2 were given和What is the purpose of self?

【讨论】:

以上是关于python接受1个位置参数,但给出了2个[重复]的主要内容,如果未能解决你的问题,请参考以下文章

TypeError:convertDocument()采用1个位置参数,但给出了2个[重复]

TypeError: __init__() 接受 2 个位置参数,但给出了 3 个 // 链接列表 [重复]

接受 1 个位置参数,但给出了 2 个

TypeError: login() 接受 1 个位置参数,但给出了 2 个

TypeError: __init__() 接受 1 个位置参数,但给出了 2 个

Sklearn - FeatureUnion - Transformer: TypeError: fit_transform() 接受 2 个位置参数,但给出了 3 个