В Python (я проверил только с Python 3.6, но я считаю, что он должен сохраняться и для многих предыдущих версий):
(0, 0) == 0, 0 # results in a two element tuple: (False, 0)
0, 0 == (0, 0) # results in a two element tuple: (0, False)
(0, 0) == (0, 0) # results in a boolean True
Но:
a = 0, 0
b = (0, 0)
a == b # results in a boolean True
Почему результат отличается от двух подходов? Оператор равенства обрабатывает кортежи по-разному?