是否有更好的方法来编写此代码:
def add (exe1, exe2):
try:
a = float (exe1)
b = float (exe2)
total = float (a + b)
except ValueError:
return None
else:
return total
答案 0 :(得分:1)
您可以在try/except
区块中进行全部操作(计算和return
):
def add(exe1, exe2):
try:
return float(exe1) + float(exe2)
except ValueError:
return None
另请注意,函数的默认返回值为None
,因此第二个return
不是必需的(您可以使用pass
),但它使代码更具可读性。
答案 1 :(得分:0)
如果您发现contextlib.suppress更具可读性,也可以使用它。
from contextlib import suppress
def add(exe1, exe2):
with suppress(ValueError):
return float(exe1) + float(exe2)
请参阅文档here。