PEP8: `True 'против` None` - PullRequest
       59

PEP8: `True 'против` None`

1 голос
/ 19 апреля 2020

PEP8 имеет твердое мнение о логическом сравнении:

Не сравнивайте логические значения с True или False, используя ==:

Правильно:

if greeting:

Неправильно:

if greeting == True:

Хуже:

if greeting is True:

Но когда речь идет о None, который также является встроенным синглтоном, рекомендуется следующее:

Сравнение с синглетами, такими как None, всегда должно быть сделано с is или is, никогда с операторами равенства.

Так почему проверка, если x is True хуже, чем проверка, если x == True, когда дело доходит до логических значений?

1 Ответ

0 голосов
/ 20 апреля 2020

"is" проверяет идентичность и не сравнивается как "==". Обычно вы хотите сравнить, вот почему «is» обычно «хуже», чем «==», но «is» вовсе не «неправильно». Это зависит только от цели.

...