相关疑难解决方法(0)

迭代时修改列表

l  = range(100)                         
for i in l:                         
    print i,                         
    print l.pop(0),                  
    print l.pop(0)
Run Code Online (Sandbox Code Playgroud)

上面的python代码给出了与预期完全不同的输出.我想循环遍历项目,以便我可以在循环时跳过项目.

请解释.

python iterator loops list

54
推荐指数
5
解决办法
8万
查看次数

Python for循环跳过其他所有循环?

我有一个奇怪的问题.有人看到我的代码有什么问题吗?

for x in questions:
    forms.append((SectionForm(request.POST, prefix=str(x.id)),x))
    print "Appended " + str(x)
for (form, question) in forms:
    print "Testing " + str(question)
    if form.is_valid():
        forms.remove((form,question))
        print "Deleted " + str(question)
        a = form.save(commit=False)
        a.audit = audit
        a.save()                
    else:
        flag_error = True
Run Code Online (Sandbox Code Playgroud)

结果是:

Appended Question 50
Appended Question 51
Appended Question 52
Testing Question 50
Deleted Question 50
Testing Question 52
Deleted Question 52
Run Code Online (Sandbox Code Playgroud)

它似乎跳过问题51.它被附加到列表中,但for循环跳过它.有任何想法吗?

python django

4
推荐指数
1
解决办法
1638
查看次数

标签 统计

python ×2

django ×1

iterator ×1

list ×1

loops ×1