Предположим, что мы хотим, чтобы какой-то блок кода выполнялся, когда оба "a" и "b" равны 5. Тогда мы можем написать так:
if a == 5 and b == 5:
# do something
Но несколько дней назад я просто невольно написал аналогичную проверку состояния как:
if a == b and b == 5:
# do something
который заставлял меня думать, есть ли разница между ними? Кроме того, есть еще один способ,
if a == b == 5:
# do something
Есть ли какая-либо разница, какая-либо разница в терминах процесса оценки или исполнения или времени? а также какой из них лучше или лучше использовать?
Связано ли это с понятием транзитивности?