如果我运行以下代码:
data = list()
length = 10
for i in range(1000):
point = i % length
data.insert(point, i)
len(data)
输出为:1000
我期待长度为10,因为我限制点在0-9范围内。
我做错了什么?
答案 0 :(得分:1)
Insert将元素添加到新位置,以覆盖旧元素尝试此操作:
length = 10
data = [None] * length
for i in range(1000):
point = i % length
data[point] = i
len(data)
=> 10
虽然不清楚为什么只需要最后10个值就要循环1000次...使用range(990, 1000)
会不会更好?