Python的实例变量为什么可以通过外部方法访问修改? 具体代码如下

function1方法内部不应该是局部变量吗,为什么可以修改到外部变量?


class a():
    def __init__(self):
        self.x = 100

def function1():
    a1.x = 200

a1 = a()
function1()
print(a1.x)

#输出结果 200

你这个就约等于:
a = 100
a = 200
所以print出来的结果是200