Python中的多个对象

2024-06-01 00:15:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我想创建一个类的两个对象。使用这两个对象,我想输入一些数字到一个列表中,这个列表是类的一个成员。输入数据后,它将显示列表的内容。简单的代码。但输出不是我想要的

class Demo:
    arr = []
    n = 0
    def __init__(self,s):
        self.n=s
    def fill(self):
        print("Enter elements in array ")
        for i in range(self.n):
            x=input()
            self.arr.append(x)
    def show(self):
        for i in range(self.n):
            print(self.arr[i])



obj1 = Demo(5)
obj2 = Demo(3)
obj1.fill()
obj2.fill()
print("Data from first Object")
obj1.show()
print("Data from second object")
obj2.show()

Tags: 对象inself列表fordatademodef
1条回答
网友
1楼 · 发布于 2024-06-01 00:15:43

你应该有:

def __init__(self,s):
    self.n=s
    self.arr = []

通过在类的主体(而不是初始值设定项)中创建arr,它成为类本身的一部分—由所有实例共享

相关问题 更多 >