本文主要是介绍小白学python之实例属性和类属性_学习笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
本文以廖雪峰的官方网站为参考来学习python的。其学习链接为廖雪峰小白学python教程。
本文是学习到python的实例属性和类属性。参考链接廖雪峰python实例属性和类属性。
class Student(object):def __init__(self,name):self.name = names = Student('Bob')
s.score = 90print(s.name,s.score)
运行结果:
Bob 90
class Student(object):name = 'Student's = Student()
print(s.name)
print(Student.name)
s.name = 'Michael'
print(s.name)
print(Student.name)
运行结果:
Student
Student
Michael
Student
笔记:
在编写程序的时候,千万不要对实例属性和类属性使用相同的名字,因为相同名称的实例属性将屏蔽掉类属性,但是当你删除实例属性后,再使用相同的名称,访问到的将是类属性。
练习:
# -*- coding: utf-8 -*-
class Student(object):count = 0def __init__(self,name):self.name = nameStudent.count +=1# 测试:
if Student.count != 0:print('测试失败!')
else:bart = Student('Bart')if Student.count != 1:print('测试失败!')else:lisa = Student('Bart')if Student.count != 2:print('测试失败!')else:print('Students:', Student.count)print('测试通过!')
笔记:
小结
实例属性属于各个实例所有,互不干扰;
类属性属于类所有,所有实例共享一个属性;
不要对实例属性和类属性使用相同的名字,否则将产生难以发现的错误。
这篇关于小白学python之实例属性和类属性_学习笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!