Индексирование объекта вызывает:
object.__getitem__(index)
Когда вы делаете A [1, 2], это эквивалентно:
A.__getitem__((1, 2))
Итак, когда вы делаете:
b = (1, 2)
A[1, 2] == A[b]
A[1, 2] == A[(1, 2)]
Оба утверждения будут иметь значение True.
Если вы проиндексировали список, он может не индексировать то же самое, что [1, 2]! = (1, 2)