如何将一个值附加到列表中的每个元组?

Chr*_*ris 2 python tuples list append sublist

如何将1个值附加到列表中的每个元组?

 tuple_list = [('a','b'),('c','d'),('e','f')]
 value = 111


 Desired_List = [(111,'a','b'),(111,'c','d'),(111,'e','f')]
Run Code Online (Sandbox Code Playgroud)

我尝试过以下方法:

   for x in tuple_list:
        x.append(111)

   for x in tuple_list:
        x + '111'
Run Code Online (Sandbox Code Playgroud)

我更喜欢子列表而不是元组,所以无论如何也要将元组更改为子列表?

注意:111实际上无论是第一个索引还是元组的最后一个索引都无关紧要.

Amb*_*ber 8

您可以使用列表推导来完成您要执行的两项操作.

前缀:

desired_list = [[value]+list(tup) for tup in tuple_list]
Run Code Online (Sandbox Code Playgroud)

后缀:

desired_list = [list(tup)+[value] for tup in tuple_list]
Run Code Online (Sandbox Code Playgroud)

该list()调用将每个元组转换为一个列表,并添加另一个列表,该列表仅value在每个列表创建后将该值添加到每个列表中.

  • 我认为这个解决方案有点偏离标准,因为 OP 想要一个元组列表,而不是一个列表列表。使用提供的解决方案的简单修复如下:`desired_list = [tuple(list(tup)+[value]) for tup in tuple_list]` (2认同)