转置 python 中第二个元素的列表列表

Transponse a list of lists from 2nd element in python

list_of_lists = [[1, 2, 3, 4], [1, 5, 6, 7], [1, 8, 9, 10]]

我想去: transposed_list = [[1, 2, 5, 8], [1, 3, 6, 9], [1, 4, 7, 10]]

换句话说,只从列表中的第二个元素转置,保留第一个元素。

尝试:

list_of_lists = [[1, 2, 3, 4], [1, 5, 6, 7], [1, 8, 9, 10]]

out = [
    [list_of_lists[i][0]] + list(l)
    for i, l in enumerate(zip(*(l[1:] for l in list_of_lists)))
]
print(out)

打印:

[[1, 2, 5, 8], [1, 3, 6, 9], [1, 4, 7, 10]]