为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
python进阶_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 我们在 class 中定义的实例方法其实也是属性,它实际上是一个函数对象. 因为方法也是一个属性,所以,它也可以动态地添加到实例上,只是需要用 types.MethodType() 把一个函数变为一个方法.
    查看全部
  • Python中定义实例的方法: 实例的方法就是在类中定义的函数,它的第一个参数永远是self,指向调用该方法的实力本身,其他参数和普通函数一样。 在实例方法内部,可以访问所有实例属性,这样,如果外部需要访问私有属性,可以通过方法调用获得,这种数据封装的形式除了能保护内部数据一致性外,还可以简化外部调用的难度。
    查看全部
  • Python中雷属性和实例属性名字冲突: 当实例属性和类属型重名时,实例属性优先级高,它将屏蔽掉对类属型的访问
    查看全部
  • python中创建类属性 类是模板,而实例则是根据类创建的对象。 绑定在一个实例上的属性不会影响其他实例,但是,类本身也是一个对象,如果在类上绑定一个属性,则所有实例都可以访问类的属性,并且,所有实例访问的类属性都是同一个!也就是说,实例属性每个实例各自拥有,互相独立,而类属性有且只有一份。 可以直接在class中定义类属性: calss Person(object): address='Earth' def __init__(self,name): self.name=name 因为类属型是直接绑定在类上的,所以,访问该属性不需要创建实例,可直接访问 由于Python是动态语言,类属型也是可以动态添加和修改的 由于雷属性只有一份,所以当雷属性改变时所有实例的雷属性都改变
    查看全部
  • Python中的访问限制: python对属性权限的控制是通过属性名来实现,如果一个属性由双下划线开头,该属性就无法被外部访问。 如果一个属性以__xxx__的形式定义,那它又可以被外部访问了,以__xxx__定义的属性在python的类中被称为特殊属性
    查看全部
  • python中初始化实例的属性 例如,Person类应该在创建的时候就拥有 name、gender 和 birth 属性,怎么办? 在定义 Person 类时,可以为Person类添加一个特殊的__init__()方法,当创建实例时,__init__()方法被自动调用,我们就能在此为每个实例都统一加上以下属性: class Person(object): def __init__(self, name, gender, birth): self.name = name self.gender = gender self.birth = birth __init__() 方法的第一个参数必须是 self(也可以用别的名字,但建议使用习惯用法),后续参数则可以自由指定,和定义函数没有任何区别。 相应的,创建实例时,就必须要提供除self以外的参数
    查看全部
  • sorted():是一个高阶函数,它可以接收一个比较函数来实现自定义排序 sorted(list,fx)
    查看全部
  • Python之定义类并创建实例: Python中类通过class关键字定义。 class Person(object): pass 按照Python的编程习惯,类名以大写字母开头,紧接着的是(object)表明该类是从哪个类继承来的。
    查看全部
  • 面向对象编程的基本思想: 类---》class Person: 实例:变量名=Person() 数据封装:在类中封装每一个实例的属性,不同的实例有相同的数据类型,但是有不同的属性
    查看全部
  • Python提供的模块管理工具 -easy_install -pip(推荐,已内置到Python2.7.9) pip使用dos窗口中输入pip install web.py 便可安装web.py的第三方模块
    查看全部
  • Python 新版本会引入新的功能,可通过__future__模块来实现
    查看全部
  • Python中动态导入模块 若模块不存在报ImportError错误 如果要提高Python代码的运行速度,最简单的方法是把某些关键函数用 C 语言重写,这样就能大大提高执行速度。 同样的功能,StringIO 是纯Python代码编写的,而 cStringIO 部分函数是 C 写的,因此 cStringIO 运行速度更快。 利用ImportError错误,我们经常在Python中动态导入模块: try: from cStringIO import StringIO except ImportError: from StringIO import StringIO 上述代码先尝试从cStringIO导入,如果失败了(比如cStringIO没有被安装),再尝试从StringIO导入。这样,如果cStringIO模块存在,则我们将获得更快的运行速度,如果cStringIO不存在,则顶多代码运行速度会变慢,但不会影响代码的正常执行。 try 的作用是捕获错误,并在捕获到指定错误时执行 except 语句。
    查看全部
  • python使用import导入一个模块 若只想导入模块中的几个函数可以用下面语句 from 模块名 import 函数名 如果遇到名字冲突,比如from import从不同模块中导入了同名函数可用from import as别名 来避免冲突
    查看全部
  • map(),一个参数 reduce(),两个参数 filter(),判断 sorted(),排序
    查看全部
  • import math def is_sqr(x): return math.sqrt(x) % 1 ==0 print filter(is_sqr, range(1, 101)) 这样我更容易理解
    查看全部

举报

0/150
提交
取消
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!