当前位置 博文首页 > m0_51723227的博客:06类属性的访问方法
class Tool(object):
count = 0
def __init__(self,name):
self.name = name
Tool.count += 1
tool1 = Tool("榔头")
tool2 = Tool("斧头")
tool3 = Tool("水桶")
print("工具对象总数%d"%tool3.count)
运行结果:
class Tool(object):
count = 0
def __init__(self,name):
self.name = name
Tool.count += 1
tool1 = Tool("榔头")
tool2 = Tool("斧头")
tool3 = Tool("水桶")
tool3.count = 99
print("工具对象总数%d"%tool3.count)
print("你猜到底有多少工具,答案为:%d"%Tool.count)
运行结果:
会发现很奇怪的现象,为何会是这样?
因为虽然 可以通过 对象.类属性 这种模式进行访问类属性的值,但是如果通过赋值记性查看,会容易掉进一个陷阱。
对象.类属性 = 值 这种表达式是 类 开辟内存地址给对象,然后给对象在该内存空间中添加一个属性,这个属性是对象的,而不是类的
新人创作,若有问题,欢迎大佬们的斧正
cs