如何在python中增加元组内部?

Pal*_*uja 11 python python-3.x

假设我有形式的元组
[(('d',0),('g',0)),(('d',0),('d',1)),(('i',0),('g',0))]
然后如何增加元组内部的数字,它们是以下形式: -
[(('d',1),('g',1)),(('d',1),('d',2)),(('i',1),('g',1))]

我可以在一个for循环中执行此操作.但我正在寻找更短的方法.
PS你可以创建新的元组

Dav*_*nus 10

列表理解将起到作用:

>>> t = [(('d',0),('g',0)),(('d',0),('d',1)),(('i',0),('g',0))] 

>>> print [tuple((a, b+1) for a, b in group) for group in t]

   [[('d', 1), ('g', 1)], [('d', 1), ('d', 2)], [('i', 1), ('g', 1)]]
Run Code Online (Sandbox Code Playgroud)


Eri*_*ouf 5

您无法更改元组中的值,元组是不可变的。您需要将它们设为列表或使用您想要的值创建一个新元组并将其存储。

  • 根据问题,元组位于列表中。 (2认同)
  • @Navith是的,但是元组本身仍然无法更改,它们是否在列表中并不重要 (2认同)