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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • setattr设置实例属性的函数
    查看全部
  • 访问实例的属性时,优先使用实例属性,其次考虑类属性。
    查看全部
  • 如果在类上绑定一个属性,则所有实例都可以访问类的属性,并且,所有实例访问的类属性都是同一个!也就是说,实例属性每个实例各自拥有,互相独立,而类属性有且只有一份。 也可以动态添加或修改:# => xxx
    查看全部
  • 如果一个属性由双下划线开头(__),该属性就无法被外部访问。 但是__xxx__的形式定义的属性可以被外部访问,称为特殊属性。
    查看全部
  • 在定义 Person 类时,可以为Person类添加一个特殊的__init__()方法,当创建实例时,__init__()方法被自动调用,我们就能在此为每个实例都统一加上属性。 __init__() 方法的第一个参数必须是 self(也可以用别的名字,但建议使用习惯用法),后续参数则可以自由指定,和定义函数没有任何区别。
    查看全部
  • 关键字lambda 表示匿名函数,冒号前面的 x 表示函数参数。
    查看全部
  • 像这种内层函数引用了外层函数的变量(参数也算变量),然后返回内层函数的情况,称为闭包(Closure)。
    查看全部
    0 采集 收起 来源:python中闭包

    2017-02-06

  • 问题的产生是因为函数只在执行时才去获取外层参数i,若函数定义时可以获取到i,问题便可解决。而默认参数正好可以完成定义时获取i值且运行函数时无需参数输入的功能,所以在函数f()定义中改为f(m = i),函数f返回值改为m*m即可.
    查看全部
    1 采集 收起 来源:python中闭包

    2017-02-06

  • def reverse_numeric(x, y): return y - x def cmp_to_key(mycmp): class K: def __init__(self, obj, *args): self.obj = obj def __lt__(self, other): return mycmp(self.obj, other.obj) < 0 def __gt__(self, other): return mycmp(self.obj, other.obj) > 0 def __eq__(self, other): return mycmp(self.obj, other.obj) == 0 def __le__(self, other): return mycmp(self.obj, other.obj) <= 0 def __ge__(self, other): return mycmp(self.obj, other.obj) >= 0 def __ne__(self, other): return mycmp(self.obj, other.obj) != 0 return K print sorted([5, 2, 4, 1, 3], key=cmp_to_key(reverse_numeric))
    查看全部
  • 这一节不会
    查看全部
  • functools.partial是创建偏函数, 实质就是把原有函数的参数变少, 有点类似java中的方法重载(一般都会重载一个有默认参数值的方法)
    查看全部
    0 采集 收起 来源:python中偏函数

    2017-02-06

  • functools.wraps可以完善装饰器带来的原始函数名修改等问题 并且这也是一个装饰器, 用法见代码
    查看全部
  • 介绍看懂了,但是题目没有看懂,以后回看
    查看全部
    4 采集 收起 来源:python中多态

    2017-02-06

  • 带参数的装饰器相当于又多了一层的高阶函数 最外面的一层是用来传递装饰器的参数用的
    查看全部
  • python中对于函数调用时的参数, 除了对应位置之外, 还可以用参数名来传递参数 这种方式叫做关键字参数, **args表示可变的关键字参数, 可以把这个args看成是一个dict类型的变量
    查看全部

举报

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

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