【发布时间】:2020-08-03 18:18:45
【问题描述】:
我有一个非常大的列表,大概有 300 万个元素,比如说
x = [1, 2, 3, 4, 5, 6, ..., 3000000]
我尝试从中减去一个数字,例如 8(输入完全像这样:x - 8),幸运的是它给了我另一个相同数量的元素列表,但从中减去了 8 喜欢
[-7, -6, -5, -4, -3, -2, ..., 2999992]
但我还有另一个清单,比如说
otherlist = [1, 2, 3, 4, 5, 6, 7, 8]
otherlist[7] = 8 在哪里,当我尝试执行相同的减法 (x - otherlist[7]) 时,它吓坏了我,不能只给我和以前一样的输出。
我该如何解决这个问题?我已经尝试创建一个单独的列表,只是
分离列表 = [0, 1, 2, ..., 2999999]
例如 所以我可以用它作为索引来迭代我原来的 x 列表
x[m] - otherlist[7] for m in separatelist
但这也有同样的不处理问题。
【问题讨论】:
-
你在使用 numpy 吗?通常,从列表中减去数字不是受支持的操作。如果列表是一个 numpy 数组,它可能会起作用
-
x - 8不是对此处显示的x的有效操作。请注意,您不需要索引列表来遍历列表 - 您可以执行for element in list或者,如果您需要索引,例如修改,for index, element in enumerate(list).
标签: python list indexing indices operation