评估,
max_val = max(a)
会导致错误,
ValueError: max() arg is an empty sequence
除了捕获以外try
,还有没有更好的方法来防止此错误except
?
a = []
try:
max_val = max(a)
except ValueError:
max_val = default
在Python 3.4+中,您可以使用default
关键字arguments:
>>> max([], default=99)
99
在较低版本中,您可以使用or
:
>>> max([] or [99])
99
注意:第二种方法不适用于所有可迭代对象。特别是对于只考虑真值的迭代器。
>>> max(iter([]) or 0)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: max() arg is an empty sequence
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句