码迷,mamicode.com
首页 > 其他好文 > 详细

面向对象进阶(2)

时间:2019-08-08 17:32:37      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:lin   block   列表   装饰器   self   第一个   存在   icm   通过   

 

1.静态方法和类方法

注:如果类中需要非该类成员存在,则可以使用静态调用的方法@staticmethod

 1)静态方法

技术图片

 

2)类方法

  类方法的第一个参数约定名为cls,它代表的是当前类相关的信息的对象(类本身也是一个对象,有的地方也称之为类的元数据对象),通过这个参数我们可以获取和类相关的信息并且可以创建出类的对象。

技术图片

注意:

  @classmethod:获取自身类(cls)中的属性,并且可以更改.
  classmethod 修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等。

 

2.继承和多态

  可以在已有类的基础上创建新类,其中的一种做法就是让一个类从另一个类那里将属性和方法直接继承下来,从而减少重复代码的编写。

 

技术图片

3.列表生成式与生成器

1)列表生成式

技术图片

  优点:计算速度快,因为一次性已经全部加载到内存中了,适合数据量不是很大的情况1000-20000

  缺点:占用内存

2)生成器

 

 

 

技术图片

 

  优点:节约内存空间

  缺点:计算速度慢,因为要生成

4.装饰器

技术图片

 

面向对象进阶(2)

标签:lin   block   列表   装饰器   self   第一个   存在   icm   通过   

原文地址:https://www.cnblogs.com/liujing17/p/11322453.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!