以下是我的清单l:
中的第一行 [0.0, 753.128, 990.43, 686.832, 366.922, -93.454, 1.0]
这是以下结果:
print l[0]
我想从列表的所有这些*行中获取所有第一个元素,并将它们分配给另一个列表。我怎么能在python中做到这一点?
答案 0 :(得分:2)
使用列表理解:
lists = [[1,2,3], [4,5,6]]
[ l[0] for l in lists ]
那就行了。更好的是使用map
:您将列表列表映射到他们的头部列表:
map( lambda l: l[0], lists )
如果性能很重要,您可能需要在列表的头部创建迭代器:
heads = itertools.imap( lambda l: l[0], enumerate(lists))
for head in heads:
print head
答案 1 :(得分:1)
another_list = [sublist[0] for sublist in l]
答案 2 :(得分:0)
试试这个:
a = [[1,2,3], ['a','b','c'], [True, False]]
first_elements = [e[0] for e in a]
print first_elements
>>> [1, 'a', True]
答案 3 :(得分:0)
这样的东西?
>>> a = [1, 2, 3, 4]
>>> b = [5,6,7,8]
>>> ab = [a, b]
>>> map (lambda x : x[0], ab)
[1, 5]
答案 4 :(得分:-1)
newlist=[]
for l in lst:
newlist.append(l[0])