>>> a = ()
>>> b = ()
>>> a is b
True
>>> a = (1, 2)
>>> b = (1, 2)
>>> a is b
False
I was expecting that in the second case also 'a' would be the same as 'b'. Since tuples are immutable, I thought they would have the same id. But as 'a is b' returns false, it means they are different objects with the same value. But in the first case(where both of them are empty tuples), they share the same id.