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.
