• 技术文章 >后端开发 >Python教程

    python什么时候使用类

    silencementsilencement2019-06-21 13:37:17原创2384

    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什么时候使用类的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:python类
    上一篇:python中怎么定义一个类 下一篇:python里fd是什么意思
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【腾讯云】年中优惠,「专享618元」优惠券!• python步长什么意思• python lambda函数如何使用• python中index怎么用
    1/1

    PHP中文网