我试图插入一个数字,数字序列的列表,由于某种原因,这个小程序只是坐在那里消耗CPU功率......不知道为什么它不工作:Python中插入数字
number = 5
lst = [4,5,6]
if all(x > number for x in lst):
lst.insert(0,number)
elif all(x < number for x in lst):
lst.append(number)
else:
for i,v in enumerate(lst):
if v>number:
lst.insert(i-1,number)
print (lst)
预期输出:
lst = [4,5,5,6]
如果原始列表已经排序,我会建议迭代列表并在第一个元素之前插入'x',它等于或大于。 – Don
@Don yea好点谢谢 – citizen2077
当你迭代它时,你不应该改变'list'。你的代码实际上永远不会前进,因为你不断地插入一个新的数字,并且'v'每次都保持不变。最好创建一个新列表。 – AChampion