Exploring Examples Using not
00:00
Let’s do some negation. In its simplest use, not inverts the truth value of a Boolean expression. So if you create two variables and then perform a comparison on them, you can see that x is not bigger than y.
00:24
But if you put not in front of the comparison, the result of the entire expression, including the not becomes True.
00:34
And that’s the basics of what inverting a Boolean expression means. However, every expression in Python is given a truth value, so you can apply not to other things, as well.
00:49
Most, in fact, are True, but there are some that are considered False. None is False, and of course, False is False.
00:58
Any numeric expression with a value of 0 is considered False. Any empty collection is also False. Additionally, if a class has implemented a dunder method like .__bool__() or or .__len__(), if .__bool__() returns False for that object, it’s considered False.
01:16
Or if the length returns 0, then that object is considered False as well. So let’s take a look at some examples of those. 0 is considered False, so not 0 should be True.
01:35
Conversely, a number like 42 is True, so not 42 should be False. And that doesn’t change if you decide to use floating-point values
01:51 or even complex numbers.
02:05
Let’s take a look at some examples involving collections. An empty string is considered False, so its negation should be True.
02:16
On the other hand, a non-empty string is True, so its inverse should be False. The negation of an empty list is True, while the negation of a non-empty list is False.
02:40
Likewise, the negation of an empty dictionary is True, and the negation of a non-empty dictionary is False.
03:01
Next, you’ll see how not can interact with other operations in Python.
Become a Member to join the conversation.
