如何向整数嵌套列表的每个元素添加指定数值?
解决嵌套列表每个元素加固定值的问题
你需要用嵌套列表推导式遍历每一层列表,给每个元素单独加上y,代码如下:
x = [[2873, 5321, 5421], [2788, 5171, 5271], [2788, 5171, 5271]] y = 400 z = [[num + y for num in sublist] for sublist in x] print(z)
运行后就能得到预期输出:
[[3273, 5721, 5821], [3188, 5571, 5671], [3188, 5571, 5671]]
你之前的错误原因:
- 直接用
x[i] + y:Python里列表和整数不能直接执行加法操作,会触发TypeError,两种类型不兼容。 - 用
x[i] + [y]:这是列表拼接操作,会把y作为新元素添加到子列表末尾,而非给每个元素加y,比如原第一个子列表会变成[2873, 5321, 5421, 400],不符合需求。
内容的提问来源于stack exchange,提问作者abh
相关产品推荐
相关产品推荐

