在我的应用程序中,我从文件中加载一些数据。这可能会失败并引发异常。因此,我想记录警告并继续加载下一个数据。Python:如何在异常停止后继续执行try语句
我正在做这样的:
try:
data_A = getDefaultConf(param_1,param_2)
except Exception as e:
log(WARNING, "Failed to get default parametres: "+str(e))
try:
data_B = getDefaultConf(param_1,param_3)
except Exception as e:
log(WARNING, "Failed to get default parametres: "+str(e))
try:
data_C = getDefaultConf(param_4,param_5)
except Exception as e:
log(WARNING, "Failed to get default parametres: "+str(e))
try:
data_D = getDefaultConf(param_4,param_6)
except Exception as e:
log(WARNING, "Failed to get default parametres: "+str(e))
try:
data_E = getDefaultConf(param_4,param_7)
except Exception as e:
log(WARNING, "Failed to get default parametres: "+str(e))
它的工作原理,但看起来很重。所以,我的问题是:它是否存在一种更轻的方法? 这可能是一些那样工作:
try:
data_A = getDefaultConf(param_1,param_2)
data_B = getDefaultConf(param_1,param_3)
data_C = getDefaultConf(param_4,param_5)
data_D = getDefaultConf(param_4,param_6)
data_E = getDefaultConf(param_4,param_7)
except Exception as e:
log(WARNING, "Failed to get default parametres: "+str(e))
# Here something that could work like a "continue" statement so that if loading of
# data_2 fails it will store the log and continue by trying to load data_3, etc.
我见过的其他职位建议把它的循环,但一些答案,岂不是更重来管理我的参数应用?
我以这种方式等待任何建议。无论我的代码是如何工作的。所以,这只是一个问题的好奇心,也可以帮助其他程序员......
*重*和*轻*甚至是什么意思? –
@Klaus Byskov Hoffmann:想象一下,如果数据量增长......在我的第一个例子中有很长的重复!对不起,但我不知道如何用英语中更好的单词来解释它(可能是单调乏味或令人厌烦) – VGO
好吧,我现在明白了。 –