在Python中,类变量(Class Variable)是定义在类中但在方法之外的变量,它们被该类的所有实例共享。以下是关于类变量的详细解析:
append
)会影响所有实例。__init__
中递增类变量)。class Employee:
raise_percent = 5 # 类变量:加薪比例
def __init__(self, name, salary):
self.name = name
self.salary = salary
def apply_raise(self):
self.salary *= (1 + self.raise_percent / 100)
# 所有实例共享raise_percent
emp1 = Employee("Alice", 50000)
emp2 = Employee("Bob", 60000)
emp1.apply_raise()
print(emp1.salary) # 52500
print(emp2.salary) # 60000(未调用apply_raise)
# 修改类变量影响所有实例
Employee.raise_percent = 10
emp2.apply_raise()
print(emp2.salary) # 66000
通过理解类变量的共享机制和操作规则,可以避免常见陷阱并合理利用其特性。
没有搜到相关的文章