gpt4 book ai didi

python - Python中如何正确使用try,except,else

转载 作者:太空狗 更新时间:2023-10-29 17:50:49 26 4
gpt4 key购买 nike

所以我想知道编写 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 block 中。选项 2,它使用嵌套 block 。它在特定行语句上引发异常。

如果某处有错误,我会很高兴知道。

最佳答案

来自 python 的禅宗,“扁平优于嵌套”。一般来说,我会选择选项 #1 样式,尽管我对 dbObject=db.GqlQuery("SELECT.... 还是 dbObject.delete() 引发 AttributeError。无论如何,您不必多次调用 dbObject.delete()

关于python - Python中如何正确使用try,except,else,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13433637/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com