несмотря на то что похоже на него при проверке булевой переменной. Рассмотрим
пример:
>>> thing = None
>>> if thing:
... print("It's some thing")
Функции
121
... else:
... print("It's no thing")
...
It's no thing
Для того чтобы понять важность отличия None от булева значения False, ис-
пользуйте оператор is:
>>> if thing is None:
... print("It's nothing")
... else:
... print("It's something")
...
It's nothing
Разница кажется небольшой, однако она важна в Python. None потребуется
вам, чтобы отличить отсутствующее значение от пустого. Помните, что цело-
численные нули, нули с плавающей точкой, пустые строки (''), списки ([]),
кортежи ((,)), словари ({}) и множества (set()) все равны False, но не равны
None.
Напишем небольшую функцию, которая выводит на экран проверку на ра-
венство None:
>>> def is_none(thing):
... if thing is None:
... print("It's None")
... elif thing:
... print("It's True")
... else:
... print("It's False")
...
Теперь выполним несколько проверок:
>>> is_none(None)
It's None
>>> is_none(True)
It's True
>>> is_none(False)
It's False
>>> is_none(0)
It's False
>>> is_none(0.0)
It's False
>>> is_none(())
It's False
>>> is_none([])
It's False