Передаются ли объекты классов в python 3.9 по ссылке?
Я несколько раз читал, что python передает аргументы по значению. Однако я тестировал следующий простой код, и похоже, что объекты класса c передаются по ссылке (модификация внутри функции изменяет объект). Может кто-нибудь объяснить, почему так?
Код:
class c:
def __init__(self,i):
self.i=i
def incr_obj(obj):
obj.i+=1
oo=c(1)
incr_obj(oo)
print(oo.i)
печатает 2.