def init(self):
self.score=[]
self.score
всегда инициализируется пустым списком.
def init(self,score=[]):
self.score=score
Вызывающий может передать необязательный параметр списка.Если они этого не делают, self.score
инициализируется в пустой список один раз, когда функция определена.(См. Common Gotchas: изменяемые аргументы по умолчанию , почему это плохая идея.)
def init(self,score):
self.score=[]
Вызывающий должен передать параметр списка (обычно, который будет назначен на self.score
, но вы выбрасываете это значение и устанавливаете self.score
в пустой список).Третий пример, вероятно, должен быть:
def init(self, score):
self.score = score