⊗pyPmExcDTC 77 of 129 menu

Pythonにおける異なるタイプの例外のキャッチ

同じコード内で、さまざまなタイプの例外を キャッチする必要が生じることがあります。

例えば、ゼロ除算の例外をキャッチする必要があるとします。 この種のエラーが発生すると、次の例外が発生します:

ZeroDivisionError: division by zero

これをキャッチするには、例外名を exceptブロックに記述します:

try: print(1 / 0) except ZeroDivisionError: print('error: do not divide by zero')

また、次のようなリストがあるとします:

lst = [1, 2, 3]

tryブロックに、存在しない要素へのアクセスなど、 他の潜在的なエラーを含むコードを記述した場合、 exceptブロックでキャッチされなかった例外は そのまま通過し、コンソールに出力されます。 その結果、コードの実行が停止してしまいます:

lst = [1, 2, 3] try: print(lst[4]) # IndexError: list index out of range を出力 except ZeroDivisionError: print('error: do not divide by zero')

このような状況を解決するには、各ブロックで 対応する例外タイプの名前を指定する必要があります。 存在しない要素へのアクセスに対する例外を コードに追加してみましょう:

try: print(lst[4]) except ZeroDivisionError: print('error: do not divide by zero') except IndexError: print('error: elem is not exist')

次のコードが与えられています:

txt = '2' res1 = txt + 3 res2 = txt1

変数res1res2で発生する 例外をキャッチするコードを記述してください。

日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否