Python中所有的数据都是对象,它提供了许多高级的内建数据类型,功能强大,使用方便,是Python的优点之一。那么什么时候使用自
定义类呢?比如设计一个Person类,如果不使用自定义类,可以这样做:
person=['mike', 23, 'male'] #0-姓名, 1-年纪, 2-性别
print(person[0], person[1], person[2])
可以看到,使用内建类型list,需要用下标来引用成员数据,不直观。可以改用dic类型来做:
person1={'name':'mike', 'age': 23, 'sex': 'male'}
person2={'name':'hellen', 'age': 20, 'sex': 'female'}
print(person1['name'], person1['age'], person1['sex'])
这样不用记忆下标,直观多了。但是字典的语法仍然有些麻烦,如果能够像这样引用:person.name,person.age等,就更好。这就是自定义类存在的好处了:
class Person:
def __init__(self, name, age, sex):
self.name = name
self.age = age
self.sex = sex
def __str__(self): #重载该函数便于测试
sep = ','
return self.name+sep+str(self.age)+sep+self.sex
person1 = Person('mike', 23, 'male')
person2 = Person('hellen', 20, 'female')
print(person1)
print(person2.name, person2.age, person2.sex)
可以看到,只要定义好这个类的构造函数,就可以很方便的生成这个类的实例,并且引用数据成员也很方便,比直接使用内建类型方便多了。其实Python就是用内建类型dic来实现自定义类的成员的存储和引用的,从这个角度来看,自定义类是内建类的简化使用方式,内建类型是自定义类型内部必要的组成部分。
Python学习网- 专业的python自学、交流公益平台!
声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果用户发布的作品侵犯了您的权利,请联系管理员:wupeng@hqwx.com
环球青藤
官方QQ群扫描上方二维码或点击一键加群,免费领取大礼包,加群暗号:青藤。 一键加群