我想让从循环到4后,从头开始循环,但是for开始循环就不能刹车回头了.

for循环索引问题_for



问题起因:看了啊哈算法书,输入5个数字,排序后输出:


写了下面的代码,不清楚为什么那样输出?

for循环索引问题_索引问题_02

目标输出应该是:

[4, 6, 8, 2]
[6, 8, 2]
[6,2]
[2]




我写的代码是:

l=[]
for i in range(4):
    num=int(raw_input('num%s:'%i))
    l.append(num)
s=[]
for i in l:
    print l
    i=max(l)
    l.remove(i)
    s.append(i)
print s

但是有问题...



经过仔细思考,是for的索引出问题了

for开始循环后,就不会从头再来了.如[1,2,3,4],第一次循环从1开始,2,3,4,如果想到3了,然后再次从1开始循环则不行.