Форум сайта python.su
1
GreyZmeem
State.class_instances.append(…)Вы можете описать для чего вам сохранять все создаваемые объекты (да еще и в классах потомках)? Мне кажется что вы сильно усложняете себе задачу, когда действительно можно, как написал Alex_HH, все сохранять в обычный list.
Офлайн
34
class State(object): class_instances = [] def __init__(self, country, capital): self.country = country self.capital = capital self.class_instances.append(self) def __str__(self): return u'The capital of {} is {}.'.format(self.country, self.capital).encode('utf-8') @classmethod def print_out(cls): for state in cls.class_instances: print state class StatePopulation(State): def __init__(self, population, *args, **kwargs): super(StatePopulation, self).__init__(*args, **kwargs) self.population = population def __str__(self): return u'The capital of {} is {}. Population: {}.'.format(self.country, self.capital, self.population).encode('utf-8') State('Russia', 'Moscow') State('Ukraine', 'Kiev') State('Belarus', 'Minks') StatePopulation(1606000, 'Zimbabwe', 'Harare') State.print_out()
The capital of Russia is Moscow.
The capital of Ukraine is Kiev.
The capital of Belarus is Minks.
The capital of Zimbabwe is Harare. Population: 1606000.
Офлайн