Python. Как получить массив объектов-экземпляров класса?

Создаю класс:
class myClass:
  x = 0
  def myMethod(self):
  x+=1

Пытаюсь в цикле создавать экземпляры класса и класть их в массив:
for x in range(1,10):
  myArray.append(myClass)

Либо так:
for x in range(1,10):
  myArray.append(0)
  myArray[-1] = myClass

В обоих случаях выдает ошибку.
Гуглил много, так и не понял, как же мне создавать произвольное число объектов с возможностью дальнейшего обращения к ним.
В питоне первую неделю, не кидайте камнями =)
  • Вопрос задан
  • 32391 просмотр
Решения вопроса 1
dotsquid
@dotsquid
И какую ошибку выдает?
Наверное, перед циклом надо указать, что myArray — это список.
myArray = []
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
un1t
@un1t
myArray.append(myClass)

Вы тут не создаете объекты. А добавляете в список ссылку на класс.
Нужно так:
myArray.append(myClass())
Ответ написан
def myMethod(self):
x+=1

Не забыли про отступы?

А по теме можно так:
>>> class test:
...     def __repr__(self):
...             return 'object!'
... 
>>> [test() for x in range(10)]
[object!, object!, object!, object!, object!, object!, object!, object!, object!, object!]
>>>
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы