在点击一个字符python后需要一个程序退出

时间:2013-06-21 21:09:29

标签: python for-loop

我的脚本首先读取数据文件,然后继续分析/绘制它。我希望程序逐行读取文件,然后在数据文件中点击#时停止查找行,此时我希望它继续其余的代码(绘图/分析等)。我一直在环顾四周,尝试过sys.exit()break,但他们不允许程序继续进行分析过程,它只是退出。完全迷失了。

了解更多信息......

for i in range(WL):
if(data[i][0]=='#'):comments=comments+1
else:
 #analytic stuff
 #more stuff

这就是最初编写的内容。这不是我的东西,所以我发现我得到这种格式的错误,我想修改它并使#终止字符。 在尝试@Lev_Levitsky的建议后,我现在得到了类型错误

flux=np.append(flux,data[i][1])
IndexError: list index out of range

为什么会这样?

这是新面貌

for i in range(WL):
 if '#' in line:
   break
 else:
  #analyze

2 个答案:

答案 0 :(得分:3)

break就是您所需要的。它将带你离开你从文件中读取行的循环,并带你到循环之后的任何东西:

with open('data') as f:
    for line in f:
       if '#' in line:
           break
       # do something else in the loop
       # like append something to a list

# analyze the data

答案 1 :(得分:1)

根据您刚刚向我们展示的内容,您要做的是:

for i in range(WL):
    if(data[i][0]=='#'):
        comments=comments+1
        break
    else:
        #analytic stuff
        #more stuff

这与列夫所建议的完全相同,只是我明确说明了你的休息时间。