Первые элементы списка списков list python

У меня есть список списков:

[[0.1, 0.2, 0.3],
[0.4, 0.5, 0.6,],
[0.7, 0.8, 0.9]]

Как я могу получить каждый первый элемент из каждого списка, потом каждый второй и тд. и записать все в список списков:

[[0.1, 0.4, 0.7],
[0.2, 0.5, 0.8],
[0.3, 0.6, 0,9]]

Ответы (2 шт):

Автор решения: GrAnd

Эта операция называется "транспонирование матрицы" (поворот матрицы относительно своей главной диагонали). В Питоне это делается в одну строчку:

m = [[0.1, 0.2, 0.3],
     [0.4, 0.5, 0.6],
     [0.7, 0.8, 0.9]]

t = list(map(list, zip(*m)))
[[0.1, 0.4, 0.7],
 [0.2, 0.5, 0.8],
 [0.3, 0.6, 0.9]]

Если вместо списка списков сойдёт и список кортежей, то вызов map() можно выкинуть.

→ Ссылка
Автор решения: vlados155

Можно попробовать так:

start_list = [
[0.1, 0.2, 0.3],
[0.4, 0.5, 0.6,],
[0.7, 0.8, 0.9]
]

new_list = []

lst = []

for i in range(len(start_list)):
    for c in start_list:
        lst.append(c[i])
    new_list.append(lst)
    lst = []
print(new_list)   

Понимаю, что можно сделать гораздо короче, но этот код для тех, кто обладает начальными знаниями языка.

→ Ссылка