7.1 Introduction to Operators
What operators, operands, and expressions are in Python, why understanding precedence and short-circuiting matters, and where operators show up constantly in real DevOps scripts.
The seven operator categories this chapter covers.
What Are Operators?
What Is It?
An operator is a symbol (+, ==, and, …) that performs an operation on one or more values, producing a result.
Why Does It Matter?
Operators are the basic building blocks of every calculation, comparison, and condition a program makes.
How Is It Used?
Combined with operands to form expressions, evaluated according to precedence rules (see 7.9 Operator Precedence and Expression Evaluation).
>>> 5 + 3
8
Operands
The values an operator acts on. In 5 + 3, both 5 and 3 are operands of the + operator. Operands can be literals, variables, or entire sub-expressions.
Expressions
What Is It?
Any combination of operators and operands that evaluates to a value. Every expression produces exactly one result, which can itself become an operand in a larger expression.
>>> x = 5
>>> (x + 3) * 2 # the whole thing is one expression
16
Why Operators Matter
Nearly every meaningful line of code — a calculation, a condition, a validity check — relies on operators. Understanding their exact behavior, especially precedence and short-circuiting, prevents an entire category of subtle logic bugs.
Real-World DevOps Use Cases
- Comparing CPU/disk usage against alert thresholds
- Checking HTTP status codes fall in a valid range
- Combining multiple health-check conditions with
and/or - Bit flags for permissions or feature toggles
Expanded fully in 7.16 DevOps Use Cases.
Quick Interview Answer
“An operator is a symbol that performs an operation on one or more operands, producing a result — combined together, operators and operands form expressions. Python groups its operators into categories: arithmetic, assignment, comparison, logical, bitwise, membership, and identity. Getting precedence and short-circuit evaluation right is what separates code that merely looks correct from code that actually is.”
Common Mistakes
- Treating operator behavior as “obvious” and skipping precedence entirely —
2 + 3 * 4silently evaluates to14, not20, which is exactly the kind of bug that passes a quick visual check. - Assuming every operator means the same thing regardless of type —
+is arithmetic addition for numbers but concatenation for sequences, covered in 7.13 Operators with Different Data Types.
Add More Questions to This Guide
Know a question that should be here? Share it and help the community!
Open Google Form