答えて
Pythonの短絡を評価します。あなたの例では、表現
1 or (1/0) and 1
は最初1
での評価を終了しTrue
を返します。
最小限の例は、Pythonの短絡評価を示すのに役立ちます。式を考えてみましょう:
(1/0) or 1
これは(1/0)
の評価の際にZeroDivisionError
例外が発生します。しかし、式:
1 or (1/0)
短絡はTrue
と評価されます。サブ式(1/0)
が評価されないため、例外は発生しません。
b or anything_else
は、anything_elseを評価せずに、bがtrue-ishであればbを返すように定義されています。あなたの最初の1はtrue-ishなので、あなたの1/0は決して評価されないので、エラーはありません。 「true-ish」とは、True
ブール値だけでなく、Pythonが真であると考えるあらゆる値を意味します。最初の1の代わりにTrueを使って式を試してみてください。
この情報を含む公式文書へのリンクを掲載できますか? –
Python 2の場合:https://docs.python.org/2/reference/expressions.html#boolean-operations –
- 1. ANTLRルールの優先順位
- 2. プロセスの優先順位とスレッドの優先順位
- 3. MySQLの優先順位順
- 4. Pythonの平等の優先順位
- 5. 優先順位キューマルチスレッド
- 6. CSS優先順位
- 7. yacc - 演算子のないルールの優先順位?
- 8. Javaの優先順位
- 9. SQLサーバージョブの優先順位
- 10. レクサーの優先順位
- 11. C#エクステンションメソッドの優先順位
- 12. JOINの優先順位は?
- 13. Rails3ルーティングの優先順位
- 14. express.jsのルータ優先順位
- 15. MVCルーティングパラメータの優先順位
- 16. JPAカスケードタイプの優先順位?
- 17. 優先順位レベルのイベントエミッタライブラリ?
- 18. Perl正規表現の優先順位ルールは何ですか?
- 19. タイプセーフな優先順位付けされたルール
- 20. 明示的な 'this'バインディング優先順位と暗黙的 'this'バインディング優先順位
- 21. インスタントvs LocalDateTime - 他の優先順位を優先する場合
- 22. htaccessのリダイレクトルールチェーンの優先順位
- 23. 〜の優先順位と++ Javaの
- 24. Solrのクエリの優先順位
- 25. オペレータの優先順位C++でのオーバーロード
- 26. 機能のオーバーライド、オンロードの優先順位
- 27. グラム++のコンパイルオプションの優先順位
- 28. 中置フォームのアプリケーションの優先順位
- 29. CSSのユニバーサルセレクタ(*)の優先順位付け
- 30. セットの$ PATHの優先順位
この質問はまだ尋ねられていません。 PythonのNOT AND&ORの優先順位を指している質問は、ここで行われている短絡評価には対応していません。 –