所以我有一個for循環做了一些事情,我需要做一個try-except語句(用於打開文件,異常如果找不到文件),但是我得到一個語法錯誤循環下面(雖然它確實給我的異常信息,當我選擇錯誤的文件)。在發生異常後,如何停止程序運行循環?如何停止循環之外的循環?
我認爲使用break可能與它有關,但不太清楚如何。我一直在想,如果我的例外信息被打印,然後打破或類似的東西。這是有問題的代碼:
def getIngredients(path, basename):
ingredient = []
filename = path + '\\' + basename
try:
file = open(filename, "r")
except:
printNow("File not found.")
for item in file:
if item.find("name") > -1:
startindex = item.find("name") + 5
endindex = item.find("<//name>") - 7
ingredients = item[startindex:endindex]
ingredient.append(ingredients)
del ingredient[0]
del ingredient[4]
for item in ingredient:
printNow(item)
基本上,因爲我選擇了錯誤的文件,以獲得異常,for循環在其下使用文件給我一個錯誤。
如果您希望我們找出問題所在,您需要發佈代碼(將其複製到您的問題中,突出顯示並按下Ctrl-K)。 –
是的,請粘貼代碼...聽起來像你需要在你的while循環中添加一行來搜索該錯誤。一旦找到它,就從內部打破循環。 –
順便說一下,Python按照[PEP-8](http://www.python.org/dev/peps/pep-0008/)使用了4個縮進字符。 –