Сегодня утром я нахожу что-то вроде:
if (a == b == c):
# do something
И был удивлен, что это дало мне ожидаемый результат.
Я думал, что это будет выглядеть как:
if ((a == b) == c):
# do something
Но, очевидно, этого не произошло. Кажется, что Python обрабатывает первое утверждение, отличное от второго, что приятно, но я не мог найти никакой документации или объяснений относительно этого.
Я тестировал и получил это:
In [1]: 2 == 2 == 2
Out[1]: True
In [2]: (2 == 2) == 2
Out[2]: False
Кто-нибудь хотел бы объяснить мне, какие правила относятся к такой "цепочке" ==
(или !=
)?
Большое спасибо.