assert アサーション
最終更新:2026-09-22
assert アサーション
assert expression[, msg] は expression が偽のとき AssertionError を送出する;-O で実行すると無効化できる。
| カテゴリ | キーワード/文 |
|---|---|
| 種類 | キーワード/文 |
| Python バージョン | all |
📝 構文
assert expression[, msg]
▶ 例
下のコードを編集し「実行」をクリックすると、出力パネルに結果が表示されます:
実行結果:
assert: must be positive
💡 関連するケース
さらに多くのケースは近日公開予定です。
❓ よくある質問
Qassert が失敗するとどうなりますか?
A`AssertionError` を投げて(捕捉されなければ)プログラムを中断します。メッセージを付けられます:`assert x > 0, 'x must be positive'`。失敗するとそのメッセージが例外に表示されます。
Qパラメータ検証に assert を使えますか?
Aお勧めしません。`python -O` で実行すると `assert` はまとめて除去され、検証が形だけのものになります。ユーザー入力やビジネスロジックの検証には `if` と `raise ValueError` などの正式な例外を使いましょう。
Q`assert` と `if` の違いは何ですか?
A`assert` は「必ず成立するという前提、成立しないのはバグ」を表し、開発・テスト段階の検査ツールです。`if` は通常のフロー制御です。本番コードで重要なロジックを `assert` に委ねないでください。