Форум сайта python.su
Всем привет,
Изучаю сейчас многомерные массивы. И пришла в голову такая идея.
К примеру есть массив:
a = [[0,2,4,6],[1,5,[9,7,8,9],13],[3,7,22,58]]
for i in a: for j in i: if len(str(j)) > 2: for k in j: print(k)
Офлайн
sepomdТо что вы привели не многомерный массив.
Изучаю сейчас многомерные массивы. И пришла в голову такая идея.
К примеру есть массив:
sepomdДля оптимальности вы критерий оптимизации приведите. Обычно оптимизацией никто не занимается, оно должно быть удовлетворительно.
какой код самый оптимальный что через цикл for прочитать массив ?
print(a)
Офлайн
Здесь делал.
>>> def flatten(seq): ... for i in seq: ... if hasattr(i, '__getitem__') and not isinstance(i, str): ... for j in flatten(i): ... yield j ... else: ... yield i ... >>> a = [[0,2,4,6],[1,5,[9,7,8,9],13],[3,7,22,58]] >>> list(flatten(a)) [0, 2, 4, 6, 1, 5, 9, 7, 8, 9, 13, 3, 7, 22, 58] >>>
Отредактировано py.user.next (Фев. 3, 2021 21:29:03)
Офлайн
Извините, я наверное не правильно выразился. Мне интересно как ещё можно вывести элементы именно массива который находится по индексу a
Но решение оказалось проще простого
a = [[0, 2, 4, 6], [1, 5, [9, 7, 8, 9], 13], [3, 7, 22, 58]] for i in a[1][2]: print(i)
Офлайн
sepomd
Изучаю сейчас многомерные массивы
sepomdРасскажите,в каком источнике вы узнали что в Python используется название “массив”
Мне интересно как ещё можно вывести элементы именно массива
Офлайн