Я новичок в Python, и мне было интересно, почему я не могу изменить атрибут для экземпляра класса с помощью функции, если я передаю экземпляр в качестве параметра функции
Например, если бы я имел:
class sol:
def __init__(self):
self.val = 0
def fun1(obj, attrib):
obj[attrib] = 1
newSol = sol()
fun1(newSol, "val")
Почему fun1 не может изменить атрибут объекта? Есть ли способ изменить его, или атрибут "val" неизменен?