try:
for v in d.values():
for item in v[1:]:
if item != v[0]:
except ValueError:
raise ValueError('this is inconsistent')
次の出力が得られます-
except ValueError:
^ IndentationError: インデントされたブロックが必要です
try:
for v in d.values():
for item in v[1:]:
if item != v[0]:
except ValueError:
raise ValueError('this is inconsistent')
次の出力が得られます-
except ValueError:
^ IndentationError: インデントされたブロックが必要です
これがコード スニペット全体である場合、行の後にif item != v[0]:
ステートメントはありません。そこに1つ置く必要があります。
代わりに例外を発生させたい場合はtry...except
、そのコードの周りにブロックは必要ありません。あなたはそれを次のように組み立てます:
for v in d.values():
for item in v[1:]:
if item != v[0]:
raise ValueError('this is inconsistent')
エラーは、プログラムが if item != v[0]: の後にステートメントを予期しているために発生する可能性がありますが、何も検出されず、except ValueError: 行を右インデントにない次の行として処理しています。