标签:默认 不同 change 实例 所有者 加载 名称 属性 方法
1.1 定义
属性名 = 属性值定义的属性类名.属性名对象名.属性名
class Student:
cls_id = 102
stu = Student()
print(Student.cls_id)
print(stu.cls_id)
print("---------")
Student.cls_id = 103
print(Student.cls_id)
print(stu.cls_id)
print("---------")
stu.cls_id = 104
print(Student.cls_id)
print(stu.cls_id)
运行结果:
102 102 --------- 103 103 --------- 103 104
1.2 对象属性与类属性的区别
对象名.属性名类名.属性名
对象名.属性名@staticmethod类名.类方法名对象名.类方法名@classmethod对象名.类方法名类名.类方法名class Goods():
discount = 1
def __init__(self,price,name):
self.name = name
self.price = price
def price_discount(self):
return self.price * Goods.discount
@classmethod
def change_discount(cls,new_discount):
cls.discount = new_discount
goods = Goods(20, "audi")
print(goods.price_discount())
Goods.change_discount(0.5)
print(goods.price_discount())
运行结果: 20 10.0
标签:默认 不同 change 实例 所有者 加载 名称 属性 方法
原文地址:https://www.cnblogs.com/songdanlee/p/11367584.html