我有一个类似下面的列表,其中第一个元素是id,另一个是字符串:
[(1, u'abc'), (2, u'def')]
我只想从这个元组列表中创建一个I列表,如下所示:
[1,2]
我将在__in
中使用这个列表,因此它需要是一个整数值列表。
发布于 2012-08-27 21:25:52
>>> a = [(1, u'abc'), (2, u'def')]
>>> [i[0] for i in a]
[1, 2]
发布于 2017-04-03 21:12:22
你可以使用“元组解包”:
>>> my_list = [(1, 'abc'), (2, 'def')]
>>> my_ids = [idx for idx, val in my_list]
>>> my_ids
[1, 2]
在迭代时,每个元组都被解包,它的值被设置为变量idx
和val
。
>>> x = (1, 'abc')
>>> idx, val = x
>>> idx
1
>>> val
'abc'
发布于 2015-09-29 22:36:20
如果元组是唯一的,那么这是可行的。
>>> a = [(1, u'abc'), (2, u'def')]
>>> a
[(1, u'abc'), (2, u'def')]
>>> dict(a).keys()
[1, 2]
>>> dict(a).values()
[u'abc', u'def']
>>>
https://stackoverflow.com/questions/12142133
复制相似问题