为什么最后把2插到最后一个数?
a = []for n in range(2,100):
for x in range(2,int(n/2+1)):
if n % x == 0:
break
else:
a.insert(-1,n)
'为什么最后会把2插入到列表的最后一个数?'
>>> a
本帖最后由 LuLD 于 2020-10-28 12:38 编辑
因为 insert(-1,str)
加在了 列表的-1 的位置,那么原本的 -1位置上的 元素就会后移一位
这样看上去就好像是加在了 倒数第二位上
所以 ,在你的列表中添加的第一个数字是 2 ,这样第一个数字就会一直排在最后一位
你可以 再设置一个int 类型的变量,每次添加后,自增1
如
int i
a.insert(i,n)
i+=1 LuLD 发表于 2020-10-28 12:35
因为 insert(-1,str)
加在了 列表的-1 的位置,那么原本的 -1位置上的 元素就会后移一位
明白了,感谢!
页:
[1]