try 例外捕捉
最終更新:2026-09-22
try 例外捕捉
try は例外を送出する可能性のあるコードを包む;except は例外を処理し、finally はリソースをクリーンアップする。
| カテゴリ | キーワード/文 |
|---|---|
| 種類 | キーワード/文 |
| Python バージョン | all |
📝 構文
try:
block
except [ExceptionType [as name]]:
handler
[finally:
cleanup]
▶ 例
下のコードを編集し「実行」をクリックすると、出力パネルに結果が表示されます:
実行結果:
caught: invalid literal for int() with base 10: 'x'
🏷️ 関連するキーワード/文
💡 関連するケース
さらに多くのケースは近日公開予定です。
❓ よくある質問
Qtry/except/else/finally の実行順はどうなりますか?
Aまず `try` ブロックを実行します。例外がなければ次に `else`(あれば)を実行し、最後に例外の有無に関係なく `finally` を実行します。例外が起きた場合は `else` をスキップし、一致する `except` に入って最後に `finally` を実行します。
Q`except` の後ろに例外型を書かないとどうなりますか?
A`KeyboardInterrupt` や `SystemExit` のような本来飲み込むべきでない例外まで含めて、あらゆる例外を捕捉します。裸の `except` は一般に推奨されません。`except Exception:` か、より具体的な型にしましょう。
Q`try` ブロックで代入した変数は `except` ブロックで使えますか?
A使えます。Python にはブロックスコープがなく、`try` がその代入行まで実行されれば、変数は `except`、`else`、`finally`、そして `try` 文の後でもアクセスできます。