为了账号安全,请及时绑定邮箱和手机立即绑定

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰
  • 第一个score(self)是get方法,用@property装饰,第二个score(self, score)是set方法,用@score.setter装饰,@score.setter是前一个@property装饰后的副产品。现在,就可以像使用属性一样设置score了 @score.set 不能忘记 。先用@property 然后引出@score.set. @score.set是第一个装饰器引出的副产品。 @property 是get 方法,副产品score.set是set方法.两个函数名都一样,都是def score。只不过第一个是def score(self),第二个是def score(self, score) 最后的return,变成了raise. raise在python中的应用是抛出一个自定义异常,异常/错误对象必须有一个名字,且它们应是Error或Exception类的子类.定义完set函数,后记得定义self.__score = score.是self.__score而不是self.score,要和init中的定义相符合 s.score = 个数字来赋值,然后才能打印调用。不能直接s.score()直接给数字 @property后先是get属性,然后才是@~.setter设置属性 下面的函数都要出现self.__score 以和上面的主函数想适应 除了setter方法需要__score,其他都可以不带__
    查看全部
    0 采集 收起 来源:python中 @property

    2016-05-15

  • 变量可以指向函数,函数名其实就是指向函数的变量
    查看全部
  • def calc_sum(lst): def lazy_sum(): return sum(lst) return lazy_sum 注意: 发现没法把 lazy_sum 移到 calc_sum 的外部,因为它引用了 calc_sum 的参数 lst。 像这种内层函数引用了外层函数的变量(参数也算变量),然后返回内层函数的情况,称为闭包(Closure)。
    查看全部
    0 采集 收起 来源:python中闭包

    2016-05-15

  • reduce在py3上需要form functools import reduce reduce 可以接收第三个参数,第三个参数的含义就是:如果默认,就从列表的第一个值开始,如果有定义的参数就从定义的参数开始
    查看全部
  • 关键字lambda 表示匿名函数,冒号前面的 x 表示函数参数。
    查看全部
  • def count(): fs = [] for i in range(1, 4): def f(j): def g(): return j*j return g fs.append(f(i)) return fs
    查看全部
    0 采集 收起 来源:python中闭包

    2016-05-15

  • x=f() 表示x 指向函数 当x()的时候才是指向这个函数的值,而x就只会显示一个函数,不是结果
    查看全部
  • 我们在函数 f 内部又定义了一个函数 g。由于函数 g 也是一个对象,函数名 g 就是指向函数 g 的变量,所以,最外层函数 f 可以返回变量 g,也就是函数 g 本身。
    查看全部
  • reduce()还可以接收第3个可选参数,作为计算的初始值
    查看全部
    0 采集 收起 来源:python中闭包

    2016-05-15

  • 因此,返回函数不要引用任何循环变量,或者后续会发生变化的变量
    查看全部
    0 采集 收起 来源:python中闭包

    2016-05-15

  • # 在创建未知实例时,实例的属性名和属性值都是未知的,需要把未知#的属性值赋给未知的属性名,因此需要一个dict的形式,即k = #v。所以用**kw
    查看全部
  • import math def add(x,y,f): return f(x)+f(y) add(4,9,math.sqrt)
    查看全部
  • map和毕设的东西有关
    查看全部
  • 要在类中用int(),就必须变成特殊方法,才能调用。因此是__int__. int()就相当于//
    查看全部
  • 这就是闭包的作用,外部函数的局部变量可以被内部函数引用,即使外部函数已经返回了。
    查看全部
    0 采集 收起 来源:python中闭包

    2016-05-14

举报

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

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

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