类对象
即类的本身。
实例对象
由类实例化出来的对象。
类变量
定义在类里面,类的所有实例共享的变量,可以直接用类调用,也可以使用实例对象调用。
实例变量
类实例化之后,每个实例单独拥有的变量。
实例:
# coding=utf-8
class Test: # 类对象
x = 5 # 类变量
y = 6
def __init__(self, x, y):
self.x = x # 实例变量
self.y = y
def add(self):
return self.x + self.y
def print_var(self):
print("类变量x = " + str(Test.x))
print("类变量y = " + str(Test.y))
print("实例变量x = " + str(self.x))
print("实例变量y = " + str(self.y))
if __name__ == '__main__':
t = Test(1, 2) # 实例对象
t.print_var()
t.z = 7 # 实例变量
print(t.z)
print(t.x) # 实例变量
print(Test.x) # 类变量
print(t.add())
# print(Test.add()) # 报错,传入的参数应该是一个实例对象
print(Test.add(Test(3, 4)))
结果:
类变量x = 5
类变量y = 6
实例变量x = 1
实例变量y = 2
7
1
5
3
7
从执行结果中可以看出,类变量和实例变量是完全独立的,即便两个变量的名字相同,相互之间也没有联系,所以在实际工作中一定要注意,还有命名的时候尽可能的不要命名为相同的名字,避免混乱。
我是「Super于」,立志做一个每天都有正反馈的人!