Можно ли эти команды уложить в небольшой цикл?
b1_1=brick()
b1_1.create()
b1_2=brick()
b1_2.create()
b1_3=brick()
b1_3.create()
b1_4=brick()
b1_4.create()
b1_5=brick()
b1_5.create()
b1_6=brick()
b1_6.create()
b1_7=brick()
b1_7.create()
b1_8=brick()
b1_8.create()
b1_9=brick()
b1_9.create()
b1_10=brick()
b1_10.create()
b1_11=brick()
b1_11.create()
b1_12=brick()
b1_12.create()
b1_13=brick()
b1_13.create()
Здесь я создаю блоки для игры по типу пинг понга, так вот можно ли уложить эти команды в цикл? Если можно, то добавьте пожалуйста bricks.append(x), где x - блок
Ответы (3 шт):
Автор решения: Danis
→ Ссылка
попробуйте так:
bricks = []
for i in range(13):
b = brick()
b.create()
bricks.append(b)
Автор решения: Zhihar
→ Ссылка
если в методе create сделать
return self
то можно вообще сделать так:
bricks = [brick().create() for _ in range(13)]
Автор решения: TastyPie
→ Ссылка
bricks = []
for i in range(1, 14):
exec(f'b1_{i} = Brick(); b1_{i}.create(); bricks.append(b1_{i})')