Задать вопрос

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

В обоих случаях выдает ошибку.
Гуглил много, так и не понял, как же мне создавать произвольное число объектов с возможностью дальнейшего обращения к ним.
В питоне первую неделю, не кидайте камнями =)
  • Вопрос задан
  • 32766 просмотров
Подписаться 4 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Python-разработчик
    9 месяцев
    Далее
  • Хекслет
    Python-разработчик
    10 месяцев
    Далее
  • SF Education
    Бэкенд-разработчик на Python
    3 месяца
    Далее
  • Stepik
    Программа курсов: Бэкенд-разработка на Python
    1 месяц
    Далее
  • Merion Academy
    Python программист с нуля
    4 месяца
    Далее
  • Skypro
    Python-разработчик с нуля
    9 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 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!]
>>>
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы