继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Python面向对象

慕仔4209126
关注TA
已关注
手记 304
粉丝 69
获赞 305

类的特性

  • 封装

  • 继承

  • 多态

    定义类的属性

  • 直接在类里面定义

  • 在构造函数里面定义

    用Python定义类

#!/usr/bin/env python# -*- coding: utf-8 -*-__author__ = 'wangke'__time__ = '2018-01-26 15:47'class Programer(object):    hobby = 'Play Computer!'    def __init__(self, name, age, weight):        self.name = name        self._age = age        self.__weight = weight    def get_weight(self):        return self.__weightif __name__ == '__main__':    Programer = Programer('xiaoke','25',88) #实例化对象    print(dir(Programer))    print(Programer.__dict__) #打印从构造函数获得的属性    print(Programer.get_weight())    # print(Programer.__weight) 直接获取会出错,使用了__定义的属性相当于私有属性,但是非要访问可以通过下面的方式访问到    print(Programer._Programer__weight)

执行结果如下
Python面向对象

定义类的方法

函数和方法

  • 函数是直接用函数名调用的

  • 方法是类的一部分

  • 类的方法也是类的属性

装饰类里面的方法

@classmethod

调用的时候用类名,而不是某个对象

@property

像访问属性一样调用方法

类的继承

#!/usr/bin/env python# -*- coding: utf-8 -*-__author__ = 'wangke'__time__ = '2018-01-26 15:47'PROJECT_NAME = 'test_projtcts'class Programer(object):    hobby = 'Play Computer!'    def __init__(self, name, age, weight):        self.name = name        self._age = age        self.__weight = weight    def get_weight(self):        return self.__weight#继承Programer类class BackEndProgramer(Programer):    def __init__(self,name, age, weight, language):             #使用super()获取父类的属性        super(BackEndProgramer,self).__init__(name, age, weight)        self.language = languageif __name__ == '__main__':    Programer = BackEndProgramer('xiaoke','25',88,'Python') #实例化对象    print(dir(Programer))    print(Programer.__dict__) #打印从构造函数获得的属性

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP