所以我想知道哪种方法是编写 try except 语句的正确方法。我是 Python 中错误处理的新手。
选项1
try:
itemCode = items["itemCode"]
dbObject=db.GqlQuery("SELECT * FROM %s WHERE code=:1" % dbName,itemCode).get()
dbObject.delete()
except AttributeError:
print "There's no item with that code"
except KeyError:
print "Bad parameter name"
except:
print "Unknow error"
选项 2
try:
itemCode = items["itemCode"]
except KeyError:
print "Bad parameter name"
else:
dbObject=db.GqlQuery("SELECT * FROM %s WHERE code=:1" % dbName,itemCode).get()
try:
dbObject.delete()
except AttributeError:
print "There's no item with that code"
except:
print "Unknow error"
选项 3 您能想到的任何其他更好的选择。
选项 1,我们看到我将所有代码包装在一个 try 块中。选项 2,它使用嵌套块。它在特定行语句上引发异常。
如果某处有错误,我会很高兴知道。