操纵列表以查找不同的变量

时间:2013-11-22 05:51:56

标签: python list

以下是我的清单l:

中的第一行
 [0.0, 753.128, 990.43, 686.832, 366.922, -93.454, 1.0]

这是以下结果:

 print l[0]

我想从列表的所有这些*行中获取所有第一个元素,并将它们分配给另一个列表。我怎么能在python中做到这一点?

5 个答案:

答案 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)

基本list comprehension

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])