相关疑难解决方法(0)

从列表中删除项目时出现奇怪的结果

我有这段代码:

numbers = range(1, 50)

for i in numbers:
    if i < 20:
        numbers.remove(i)

print(numbers)
Run Code Online (Sandbox Code Playgroud)

但我得到的结果是:

[2,4,6,8,10,12,14,16,18,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35 ,36,37,38,39,40,41,42,43,44,45,46,47,48,49]

当然我希望结果中没有出现20以下的数字,我假设我在删除时做错了.

python loops list

32
推荐指数
3
解决办法
5844
查看次数

Python for 循环跳过项目

所以我有这个代码:

animals = ['cat', 'dog', 'waffle', 'giraffe', 'turtle']
breakfeast_foods = ['waffle', 'pancake', 'eggs']
for index, item in enumerate(animals):
    print item
    if item in breakfeast_foods:
        animals.pop(index)
Run Code Online (Sandbox Code Playgroud)

由于某种原因,循环打印语句不会打印“长颈鹿”。我不知道为什么,是我缺少什么吗?

python python-2.7

0
推荐指数
1
解决办法
4504
查看次数

标签 统计

python ×2

list ×1

loops ×1

python-2.7 ×1