Как создать единые вложенные списки и преобразовать их в многомерные массивы?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как создать единые вложенные списки и преобразовать их в многомерные массивы?

Сообщение Anonymous »

Я хотел бы создать вложенный список произвольной глубины (специфически содержит численные значения) с равномерными произвольными длинами на каждом уровне, а затем сжимает его к массиве минимальных размеров, т.е. Если слой списков все длина 1 все списки на этой глубине распакованы. < /p>
Пример: < /p>

import random as ran
import numpy as np

prompt = (3,1,5,1)
#promt length and positions of 1 should be arbitrarily
old_list = []

for a in range(prompt[0]):
old_list.append([])
for b in range(prompt[1]):
old_list[a].append([])
for c in range(prompt[2]):
old_list[a].append([])
for d in range(prompt[3]):
#using random outputs for simplicity, could be anything
old_list[a][c].append(ran.randint(0, 10))

new_list = []
for a in range(prompt[0]):
new_list.append([])
#prompt[1] should be automatically skipped as it is 1
for c in range(prompt[2]):
#prompt[3] should be automatically skipped as it is 1
new_list[a].append(old_list[a][0][c][0])
final = np.array(new_list)

print(f'''{final}
is clearly and more useful and tidier than
{old_list} ''')
< /code>
Я ожидаю, что есть какой -то способ автоматизации для цикла в описанном порядке, а также уплотнения в Numpy, но я не знаю, с чего начать. любая помощь будет апрецированной.
спасибо! < /p>

Подробнее здесь: https://stackoverflow.com/questions/797 ... ional-arra
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»