coo*_*ner 0 python while-loop python-2.7
我的代码:
i=0
a = range(100)
while i < range(100):
print i
i += 9
Run Code Online (Sandbox Code Playgroud)
这进入了无限循环...我可以知道为什么吗?
是因为整数与列表比较?但当我变得超过99时会发生什么?
它不应该出现在while循环中吗?
下面的代码正常工作正常:
i=0
a = range(100)
a_len = len(a)
while i < a_len:
print i
i += 9
Run Code Online (Sandbox Code Playgroud)
遗憾的是,在Python 2.x中,a int
总是小于a list
(即使该列表为空).
>>> 9 < []
True
Run Code Online (Sandbox Code Playgroud)
你想要做的是使用3参数形式,range
所以你有一个开始,一个停止和一个步骤,例如:
for i in range(0, 100, 9):
print i
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
74 次 |
最近记录: |