我可以从列表的列中减去一个值吗?

2024-04-26 23:05:53 发布

您现在位置:Python中文网/ 问答频道 /正文

如果我有

listOfLists = [
   [123, "str1"],
   [234, "str2"]
              ]

listOfLists[:[0]] = [x - 15 for x in listOfLists]

我可以执行一个操作,从信息的[:[0]]部分减去一个值吗

我当前遇到的错误是

can only concatenate list (not "int") to list

Tags: toin信息onlyfor错误notcan
2条回答

你可以这样做:

listOfLists = [ [x[0]-15, x[1]] for x in listOfLists]

可以使用map函数将操作应用于列表的每个成员。不管每个列表的长度如何,从第一个元素中减去的一种方法如下:

>>> foo = [ [1, "a"], [2, "b", "c"] ]
>>> map(lambda x: [x[0] - 5] + x[1:], foo)
[[-4, 'a'], [-3, 'b', 'c']]

相关问题 更多 >