Combining Python's Logical Operators
00:00
Oftentimes the and
operator is combined with other Boolean operators, or
and not
, to create more complex expressions.
00:09 And it’s important to know exactly how Python will evaluate these expressions.
00:15
For example, how would an expression like 5 or 3 and 2 > 1
be evaluated? There’s an or
, an and
, and also a >
. How does Python know which operation to perform first? Python uses something called operator precedence to determine which operations to perform in which order in a complex expression.
00:39
This is basically the same thing as order of operations you learned in math class, but since Python has so many operations, you can imagine there are many more rules. For Boolean operations, all and
operations are performed first, from left to right, then the or
operations are performed. So in this case, the 3 and 2 > 1
will be evaluated first.
01:05
Then the result of that will be connected with or
to the expression 5
. This expression doesn’t have a not
but if it did, the not
would be evaluated even before any and
operations.
01:19
However, just like in math class, you can use parentheses if you want a lower-ordered operation to be evaluated first. So if you want the 5 or 3
to be performed first, you would put parentheses around them.
01:35 FYI, in Python you always use parentheses, often nested inside other sets of parentheses, to group operations like this. In math class, you often used other symbols, like brackets and braces, if you had one set inside another.
01:51 But those symbols have other meanings in Python, so for grouping operations, it’s always parentheses. In some cases, you might want to add parentheses that aren’t strictly necessary just to make clear to yourself and anyone else who might read your code which operation is being performed first.
02:10
So you could put parentheses around the and
operation just to make things easier to read. Finally, as a group, Boolean operators have a much lower precedence than other operations.
02:23
So, for example, the >
in 2 > 1
will be evaluated before anything involving and
or or
.
02:34
Now that you know how to put together expressions involving and
, let’s take a look at when you might use them.
Become a Member to join the conversation.