将对象作为列表传递给python中子类的构造函数

问题描述 投票:0回答:1

如何为函数getdata()实现子类B以返回构造函数中的详细信息?如果B中的构造函数使用单个对象,但如果对象是两个或多个并作为list传递,则很难实现。

此示例显示了我的意图。代码缺乏完整的实现。

class A(object):
    def __init__(self, a):
        self.a = a

    def geta(self):
        return str(a)


class B(A):
    def __init__(self, b, [objA1, objA2]):
        self.b = b
        super().__init__()
        # ...        

    def getb(self):
        return str(b)

    def getdata(self):
        return self.getb()  # + ...


obja1 = A('John')
obja2 = A('Doe')
obj = B('123', '456', [obja1, obja2])

# Test1 obj.getdata() == "John Doe 123 456"

我如何实现子类B的功能getdata()以返回构造函数中的详细信息?如果B中的构造函数采用单个对象,但如果...

python list object constructor subclass
1个回答
1
投票

您可以这样做并作为常规参数传递,然后转换为列表

© www.soinside.com 2019 - 2024. All rights reserved.