鉴于以下情况:
list = [('[', "'Conrad Clifton'"), ('[', "'Rippa'")]
我将如何获得表格中的列表
[('Conrad Clifton', 'Rippa')]
类似于:
new_list = []
for first, second in list:
new_list.append(second)
然后将列表转换为元组。有没有办法通过列表理解来做到这一点?
鉴于以下情况:
list = [('[', "'Conrad Clifton'"), ('[', "'Rippa'")]
我将如何获得表格中的列表
[('Conrad Clifton', 'Rippa')]
类似于:
new_list = []
for first, second in list:
new_list.append(second)
然后将列表转换为元组。有没有办法通过列表理解来做到这一点?
>>> tuple(second for first, second in li)
("'Conrad Clifton'", "'Rippa'")
并且不要将您的列表命名为list
. 它是一种内置类型。您不应该使用内置名称来命名您的变量。
your_output = tuple(y for x,y in your_input)
另一种解决方案(python 2.x):
>>> x = [('[', "'Conrad Clifton'"), ('[', "'Rippa'")]
>>> zip(*x)[1]
("'Conrad Clifton'", "'Rippa'")
避免list
用作变量名,它会隐藏内置名称。
你也可以使用operator.itemgetter
:
>>> import operator
>>> l = [('[', "'Conrad Clifton'"), ('[', "'Rippa'")]
>>> map(operator.itemgetter(1), l)
["'Conrad Clifton'", "'Rippa'"]