我有一个列表,我想得到一个新的列表,这样位置0的每个元组都有1加到它上面.我可以使用循环构建新的元组列表,但我想了解如何使用列表理解来实现这一点. 我所拥有的:

in_list = [(0, 1), (1, 1), (2, 1), (3, 3), (4, 4)]

我想要的是:

in_list = [(1, 1), (2, 1), (3, 1), (4, 3), (5, 4)]

推荐答案

元组是不变类型,因此要增加位置0处的值,请构造新的元组:

in_list = [(0, 1), (1, 1), (2, 1), (3, 3), (4, 4)]


in_list = [(a + 1, b) for a, b in in_list]
print(in_list)

打印:

[(1, 1), (2, 1), (3, 1), (4, 3), (5, 4)]

Python相关问答推荐

使用unmanagedexports从Python调用的c#DLC

Python:根据创建时间合并两个收件箱

使用decorator 重复超载

如何判断. text文件中的某个字符,然后读取该行

Python中使用Delivercio进行多个请求

删除pandas rame时间序列列中未更改的值

如何将新的SQL服务器功能映射到SQL Alchemy的ORM

如何在Python中使用时区夏令时获取任何给定本地时间的纪元值?

使用polars .滤镜进行切片速度比pandas .loc慢

Pandas 填充条件是另一列

Pandas 有条件轮班操作

使用miniconda创建环境的问题

在Python Attrs包中,如何在field_Transformer函数中添加字段?

如何将Docker内部运行的mariadb与主机上Docker外部运行的Python脚本连接起来

如何更改分组条形图中条形图的 colored颜色 ?

OR—Tools CP SAT条件约束

我对我应该做什么以及我如何做感到困惑'

计算每个IP的平均值

在pandas中使用group_by,但有条件

Matplotlib中的字体权重