我有一个包含两个元素的元组列表。第一个元素是一个字符串,第二个元素是一个列表。我想要创建一个包含单个元组所有元素的列表。我尝试过使用append方法,但是它会返回一个空列表。我也尝试了list连接,但它只返回最后一个元组。
lista = [('una Tantum', ['Frasi latine']), ('Montagna', ['Montagna', 'Geomorfologia']), ('Ande', ['Ande', "Gruppi montuosi dell'Argentina", 'Gruppi montuosi del Cile', u'Gruppi montuosi del Per\xf9', 'Gruppi montuosi della Bolivia', "Gruppi montuosi dell'Ecuador", 'Gruppi montuosi del Venezuela', 'Gruppi montuosi della Colombia']), ('Ande', ['Ande', "Gruppi montuosi dell'Argentina", 'Gruppi montuosi del Cile', u'Gruppi montuosi del Per\xf9', 'Gruppi montuosi della Bolivia', "Gruppi montuosi dell'Ecuador", 'Gruppi montuosi del Venezuela', 'Gruppi montuosi della Colombia'])]
for x in lista:
data = [x[0]]+x[1] # in this way the data variable is populated only with the last element e.g. data = ('Ande', ['Ande', "Gruppi montuosi dell'Argentina", 'Gruppi montuosi del Cile', u'Gruppi montuosi del Per\xf9', 'Gruppi montuosi della Bolivia', "Gruppi montuosi dell'Ecuador", 'Gruppi montuosi del Venezuela', 'Gruppi montuosi della Colombia'])
print data我也曾尝试过:
for x in lista:
x[1].append(x[0])但它还给了我一个空名单。请帮帮我
预期的结果是:
[['una Tantum', 'Frasi latine'], ['Montagna', 'Montagna', 'Geomorfologia'], ['Ande', 'Ande', "Gruppi montuosi dell'Argentina", 'Gruppi montuosi del Cile', u'Gruppi montuosi del Per\xf9', 'Gruppi montuosi della Bolivia', "Gruppi montuosi dell'Ecuador", 'Gruppi montuosi del Venezuela', 'Gruppi montuosi della Colombia'], ['Ande', 'Ande', "Gruppi montuosi dell'Argentina", 'Gruppi montuosi del Cile', u'Gruppi montuosi del Per\xf9', 'Gruppi montuosi della Bolivia', "Gruppi montuosi dell'Ecuador", 'Gruppi montuosi del Venezuela', 'Gruppi montuosi della Colombia']]发布于 2016-02-05 09:33:11
您可以将第一种方法转换为列表理解,以保留新列表中的所有扩展子列表。而且它比蟒蛇的常规循环更有节奏感。
>>> [[item]+sub_list for item,sub_list in lista]
[['una Tantum', 'Frasi latine'], ['Montagna', 'Montagna', 'Geomorfologia'], ['Ande', 'Ande', "Gruppi montuosi dell'Argentina", 'Gruppi montuosi del Cile', u'Gruppi montuosi del Per\xf9', 'Gruppi montuosi della Bolivia', "Gruppi montuosi dell'Ecuador", 'Gruppi montuosi del Venezuela', 'Gruppi montuosi della Colombia'], ['Ande', 'Ande', "Gruppi montuosi dell'Argentina", 'Gruppi montuosi del Cile', u'Gruppi montuosi del Per\xf9', 'Gruppi montuosi della Bolivia', "Gruppi montuosi dell'Ecuador", 'Gruppi montuosi del Venezuela', 'Gruppi montuosi della Colombia']]发布于 2016-02-05 09:47:12
为了完整起见,在Python3.5中,您这样做:
>>> [[x, *l] for x,l in lista]
[['una Tantum', 'Frasi latine'], ['Montagna', 'Montagna', 'Geomorfologia'], ['Ande', 'Ande', "Gruppi montuosi dell'Argentina", 'Gruppi montuosi del Cile', 'Gruppi montuosi del Perù', 'Gruppi montuosi della Bolivia', "Gruppi montuosi dell'Ecuador", 'Gruppi montuosi del Venezuela', 'Gruppi montuosi della Colombia'], ['Ande', 'Ande', "Gruppi montuosi dell'Argentina", 'Gruppi montuosi del Cile', 'Gruppi montuosi del Perù', 'Gruppi montuosi della Bolivia', "Gruppi montuosi dell'Ecuador", 'Gruppi montuosi del Venezuela', 'Gruppi montuosi della Colombia']]发布于 2016-02-05 10:48:13
地图(lambda:[x] + x1,[('A','Jay',‘嗨’),('B','Jay',‘Hello’)
https://stackoverflow.com/questions/35220526
复制相似问题