Да, они неизменны, как струны. Код x += 1
фактически создает новый целочисленный объект и присваивает его x
.
В случае, если неясно, что неизменяемые вещи автоматически поточнобезопасны, поскольку у двух потоков нет возможности попытаться изменить одно и то же одновременно. Видите ли, их нельзя изменить, потому что они неизменны.
Пример от переводчика:
>>> x = 2**123
>>> x
10633823966279326983230456482242756608
>>> id(x)
139652080199552
>>> a = id(x)
>>> x+=1
>>> id(x)
139652085519488
>>> id(x) == a
False