如何在python中创建对象数组?

2024-05-18 23:25:53 发布

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

当我在python中创建对象数组时,初始化为数组的值并不像预期的那样

我定义的类是

class piece:
    x = 0
    y = 0
    rank = ""
    life = True
    family = ""
    pic = ""

    def __init__(self, x_position, y_position, p_rank, p_family):
        piece.x = x_position
        piece.y = y_position
        piece.rank = p_rank
        piece.family = p_family

当我初始化数组时

pie = []
pie.append(piece(25, 25, "p", "black"))
pie.append(piece(75, 25, "p", "black"))
pie.append(piece(125, 25, "p", "black"))

print(pie[1].x)

输出是125 预期产量为75


Tags: truepiece定义defposition数组familyclass
1条回答
网友
1楼 · 发布于 2024-05-18 23:25:53

您正在设置类属性,而不是将值分配给类的实例:

class piece:

    def __init__(self, x_position, y_position, p_rank, p_family):
        self.x = x_position
        self.y = y_position
        self.rank = p_rank
        self.family = p_family

相关问题 更多 >

    热门问题