TransWikia.com

Как расширить двумерный массив в python

Stack Overflow на русском Asked on November 24, 2021

Я делаю игру с бесконечным миром. У меня есть двумерный массив pos_block[x][y]. Каждая ячейка массива соответствует координате в мире. Так как изначально я не могу создать массив нужного размера я хочу его расширять. Как это сделать? Создаю массив с помощью pos_blocks=[[0 for a in range(-501,501)] for b in range(-801,801)] и хочу его увеличивать.

One Answer

Да так то нет ничего проще, если немного подумать:

pos_blocks=[[0 for a in range(-1,1)] for b in range(-2,2)]
print(pos_blocks)

# добавляем ещё один список в конец основного списка
pos_blocks.append([0]*2)
print(pos_blocks)

# добавляем по одному элементу в каждый список внутри основного списка
for l in pos_blocks:
    l.append(0)
print(pos_blocks)

Исходный список списков:

[[0, 0], [0, 0], [0, 0], [0, 0]]

После добавления в него нового списка:

[[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]

После добавления элемента в каждый вложенный список:

[[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]

Answered by CrazyElf on November 24, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP