2011-12-26 98 views
0

例如,我有一些代码:如何杀死while循环?

while (1): 
    bla-bla-bal 
    time.sleep(10) 

如何改变这种代码,杀死这个循环(不是kill -9)或键盘interrrupt(按Ctrl-C)?

回答

3

使用断裂或更改而

while True: 
    doit 
    if something: 
     break 

替代地,布尔变量:

i_go = True 
while i_go: 
    doit 
    if something: 
     i_go = False 
1

必须有存在该环不再需要执行的条件。取决于它是什么(从现在的代码中讲出来有点太难了),你可以输入一个break语句。

例子:

while True: 
    # doing stuff 
    if end_condition: 
     break # Valid ending condition 
+0

事实上,利用休息可以让你,好了,跳出循环。现在,不要忘记,你也可以使用'while not end_condition:do stuff()'。 – 2011-12-26 10:35:19

0
while (1): 
    bla-bla-bal 
    time.sleep(10) 

我想你的意思是按Ctrl + C不能在time.sleep(10)工作。

如果是这样,将它分成1秒大块:

while (1): 
    bla-bla-bal 
    for i in range(10): 
     time.sleep(1)