or Boolean OR (short-circuit)
Last updated: 2026-09-22
or Boolean OR (short-circuit)
or is short-circuit boolean OR; returns first truthy or last falsy.
| Category | Operators |
|---|---|
| Kind | Operator |
| Python Version | all |
📝 Syntax
a or b
▶ Example
Edit the code, press Run, and see the result in the output panel:
Output:
x
default
{}
💡 Related Cases
More case studies coming soon — check back later.
❓ FAQ
QWhat does or return?
AIt returns the first truthy value or the last falsy one: `0 or 'x'` returns `'x'`, and `'' or [] or {}` returns `{}`. Unless the operands are boolean themselves, the result is not necessarily `True`/`False`.
QWhat pitfall is there in using or to set a default value for a variable?
A`x = user_input or 'default'` takes the default whenever the input is `0`, an empty string, or `None`. If `0` or an empty string is a valid value, this is wrong; use `if user_input is None` instead.
QWhat is the precedence of not, and, and or?
AFrom highest to lowest: `not > and > or`. So `a or b and c` is equivalent to `a or (b and c)`; to express `(a or b) and c` you must add parentheses.