python中的全局变量、实例变量、局部变量、静态变量等

发布时间 2023-04-06 12:40:11作者: 爱吃酸奶果冻的叮当猫
a=1#全局变量,在模块内、在所有函数外面、在class外面
class Test():
    c=3#静态变量,也可以说类属性,在class内的,但不在class的方法内的
    def login(self):
        b=2#局部变量,在函数内、在class的方法内(未加self修饰的)
        self.d=4#实例变量,也可以说实例属性,在class的方法内的,用self修饰的变量
    def __init__(self):
        self.e=5
t=Test()
t.a #报错,AttributeError: 'Test' object has no attribute 'a'
t.b #报错,AttributeError: 'Test' object has no attribute 'b'
t.c
t.d #报错,AttributeError: 'Test' object has no attribute 'd',self定义的变量要在init中首次出现
t.e


输入:
a=1#全局变量,在模块内、在所有函数外面、在class外面
class Test():
    c=3#静态变量,也可以说类属性,在class内的,但不在class的方法内的
    def login(self):
        b=2#局部变量,在函数内、在class的方法内(未加self修饰的)
        self.d=4#实例变量,也可以说实例属性,在class的方法内的,用self修饰的变量.第一次出现要在init中
    def __init__(self):
        self.e=5#实例变量,也可以说实例属性,在class的方法内的,用self修饰的变量
t=Test()
print(a)
print(t.c,Test.c)
print(t.e)
输出:
1
3 3
5