Python:如何添加对象的静态类数组?

2024-06-16 11:12:59 发布

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

我是个Python新手! 我在玩课堂,列表和字典,我有一个问题!你知道吗

我有一段代码:

class Vacca( object ):
    Munte = dict()

    def __init__( self, nr ):
        self.nome = "VACCA_" + str( nr )
        self.numero = str(nr)
        self.mungiture = []

    def mungi( self, latte ):
        nr = self.numero
        Vacca.Munte[ nr ] = self
        Vacca.Munte[ nr ].mungiture.append( latte )

vacca = Vacca( 1 )
vacca.mungi( "white milk" )

vacca = Vacca( 1 )
vacca.mungi( "black milk" )

vacca = Vacca( 1 )
vacca.mungi( "yellow milk" )

vacca = Vacca( 2 )
vacca.mungi( "dark chocolate" )

for v in Vacca.Munte:
    print Vacca.Munte[v].mungiture

如果我运行这个结果:

['yellow milk']
['dark chocolate']

但我需要这个:

['white milk','black milk','yellow milk']
['dark chocolate']

我怎么了?你知道吗


Tags: selfdefnrdarkstryellowmilklatte
1条回答
网友
1楼 · 发布于 2024-06-16 11:12:59

问题是,每次执行vacca = Vacca(1)操作时都会覆盖对象,并删除之前所做的所有操作!你知道吗

改为这样做:

vacca = Vacca( 1 )
vacca.mungi( "white milk" )
vacca.mungi( "black milk" )
vacca.mungi( "yellow milk" )

相关问题 更多 >