次の例は非常に簡単です。 map()をExceptionを発生させる関数で実行したい。これは一例でより明確になります。私はこのコードを実行するとpython map exception continueマッピング実行
number_list = range(-2,8)
def one_divide_by(n):
return 1/n
try:
for number, divide in zip(number_list, map(one_divide_by, number_list)):
print("%d : %f" % (number, divide))
except ZeroDivisionError:
# Execution is stopped. I want to continue mapping
pass
は私が取得:それは私のリストで0によるだ
-2 : -0.500000
-1 : -1.000000
。私はこの0を削除したくありません(実際には例外が出るかどうか最初に知ることができないためです)。 例外の後にのマッピングを続ける方法を知っていますか?
あなたがの代わりにどのような価値を知っている場合は、 '無限' を試す '使用:リターン1/N; ZeroDivisionErrorを除く:return yourvalue' – Pynchia