【发布时间】:2019-12-17 23:45:25
【问题描述】:
你好只是好奇为什么第二个实例已经获得了在第一个实例创建中添加的类别。我该如何解决?
class Game_record:
category = []
def __init__(self,name):
self.name = name
def add_category(self, cat):
self.category.append(cat)
def reset_cat(self):
self.category = []
def ret_cat(self):
return self.category
game = ["a","b"]
for each in game:
g = Game_record( each )
g.add_category("kol")
g.add_category("bol")
print(g.ret_cat())
g.reset_cat()
print(g.ret_cat())
输出
['kol', 'bol']
[]
['kol', 'bol', 'kol', 'bol']
[]
【问题讨论】:
-
在
__init__中创建self.category,而不是使用类属性(全类共享)
标签: python python-3.x list class