2010-11-22 134 views
1

如何添加布尔检查for循环?我正在尝试这样的事情:python 3.1布尔检查for循环

for i in range (0, someNumber) and keepGoing == True 

它给我的错误'布尔'对象是不可迭代的。谢谢您的帮助。

回答

7

这不像C中的for循环;你在这里做的是创建一个范围对象并迭代它中的每个元素(将其命名为“我”)。在C中,循环的迭代过程中可以进行多次检查,但是在Python中,您可以遍历列表或元组等可迭代对象。

for i in range(0, someNumber): 
    if keepGoing: 
     # Code 

基本上,你不能设置一个标志来停止循环,因为“循环”将迭代整个范围对象。添加“停止标志”的唯一方法是将break排除在循环之外。

for i in range(0, someNumber): 
    if not keepGoing: 
     break 
    else: 
     # Code 

甚至

for i in range(0, someNumber): 
    if not keepGoing: 
     break 
    # Code 
+0

您可能需要添加其他':break'到这一点。 – Lizzan 2010-11-22 06:45:25

+0

感谢您的快速响应。 – Pinsickle 2010-11-22 06:46:40

+0

@Pinsickle:没问题。如果我的答案解决了您的问题,请点击大复选框将其作为答案接受。 – Zeke 2010-11-22 07:29:42