Допустим, у меня есть список
ls = [[1,2,3],
[4,5,6],
[7,8,9]]
Теперь я хочу разделить этот список на другие меньшие квадратные 2d списки, где сторона квадрата определяется входом k.Поэтому, если бы k равнялось 2, я бы получил 4 новых списка, пытаясь равномерно распределить элементы между ними, и эти списки были бы:
L1 = [1,2,
4,5]
L2 = [3,
6]
L3 = [7,8]
L4 = [9]
Я не уверен, как мне это сделать.Я могу разделить список, если я решу количество квадратов, но не если число квадратов является случайным числом, введенным пользователем.Я попробовал это, но я не уверен, как мне продолжить с этого момента, после выбора первого блока элементов.
ls = [[1,2,3],
[4,5,6],
[7,8,9]]
def splitList(ls, k):
if len(ls) == 1:
return ls[0]
else:
for x in range(k):
for y in range(k):
print (ls[x][y])
print (splitList(ls, 2))
Любая помощь будет принята с благодарностью.Спасибо за ваше время!