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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰
  • 1. 将代码分拆放入多个py文件,好处:同一个名字的变量互不影响 2. 同名模块放入不同包中 3. 包就是文件夹,模块就是xxx.py文件,且包可以有多级 4. 区分包和普通目录:包下面有个_init_.py,每层必须要有
    查看全部
  • 1. int()函数还提供额外的base参数,默认值为10。如果传入base参数,就可以做 N 进制的转换 2. functools.partial就是帮助我们创建一个偏函数的,不需要我们自己定义int2(),可以直接使用下面的代码创建一个新的函数int23. functools.partial可以把一个参数多的函数变成一个参数少的新函数,少的参数需要在创建时指定默认值,这样,新函数调用的难度就降低了。
    查看全部
    0 采集 收起 来源:python中偏函数

    2015-06-03

  • 1. decorator很不方便,因为我们也很难把原函数的所有必要属性都一个一个复制到新函数上,所以Python内置的functools可以用来自动化完成这个“复制”的任务
    查看全部
  • add() 函数需要传入两个参数,但是 @log 写死了只含一个参数的返回函数。 要让 @log 自适应任何参数定义的函数,可以利用Python的 *args 和 **kw,保证任意个数的参数总是能正常调用
    查看全部
  • 闭包的特点是返回的函数还引用了外层函数的局部变量,所以,要正确使用闭包,就要确保引用的局部变量在函数返回后不能变。
    查看全部
    0 采集 收起 来源:python中闭包

    2015-06-03

  • 通过高阶函数返回新函数 1.Python内置的@语法就是为了简化装饰器调用; 装饰器作用: 1.可以极大地简化代码,避免每个函数编写重复性代码 打印日志:@log 检测性能:@performance 数据库事务:@transaction URL路由:@post('/register')
    查看全部
  • sorted()函数可对list进行排序: 1.sorted()也可以对字符串进行排序,字符串默认按照ASCII大小来比较。'Z'的ASCII码比'a'小。 2.用u1= s1.upper()转换成全部大写后写入对比条件,作为sorted()的附加条件函数。 例子: >>>sorted([36, 5, 12, 9, 21]) # 直接从小到大排序 [5, 9, 12, 21, 36] # 如果 x 应该排在 y 的前面,返回 -1,如果 x 应该排在 y 的后面,返回 1。如果 x 和 y 相等,返回 0。 编写一个倒序函数加在sorted的列表后: def reversed_cmp(x, y): if x > y: return -1 if x < y: return 1 return 0 >>> sorted([36, 5, 12, 9, 21], reversed_cmp) [36, 21, 12, 9, 5]
    查看全部
  • 1.关键字lambda 表示匿名函数,冒号前面的 x 表示函数参数。 2.匿名函数有个限制,就是只能有一个表达式,不写return,返回值就是该表达式的结果。 3.使用匿名函数,可以不必定义函数名,直接创建一个函数对象
    查看全部
  • 1. 内层函数引用了外层函数的变量(参数也算变量),然后返回内层函数的情况,称为闭包(Closure)。 2. 闭包的特点是返回的函数还引用了外层函数的局部变量,所以,要正确使用闭包,就要确保引用的局部变量在函数返回后不能变。
    查看全部
    0 采集 收起 来源:python中闭包

    2015-06-02

  • 字母大写upper(),小写lower() return s[].upper()
    查看全部
  • __slots__的目的是限制当前类所能拥有的属性,如果不需要添加任意动态的属性,使用__slots__也能节省内存。
    查看全部
    0 采集 收起 来源:python中 __slots__

    2015-06-02

  • 利用Python的一个特殊的__slots__来实现。 顾名思义,__slots__是指一个类允许的属性列表: class Student(object): __slots__ = ('name', 'gender', 'score') def __init__(self, name, gender, score): self.name = name self.gender = gender self.score = score 限制添加类的属性
    查看全部
    0 采集 收起 来源:python中 __slots__

    2015-06-02

  • class Student(object): def __init__(self, name, score): self.name = name self.__score = score @property def score(self): return self.__score @score.setter def score(self, score): if score < 0 or score > 100: raise ValueError('invalid score') self.__score = score 注意: 第一个score(self)是get方法,用@property装饰,第二个score(self, score)是set方法,用@score.setter装饰,@score.setter是前一个@property装饰后的副产品。
    查看全部
    0 采集 收起 来源:python中 @property

    2018-03-22

  • Python内置的 sorted()函数可对list进行排序: >>>sorted([36, 5, 12, 9, 21]) [5, 9, 12, 21, 36] 但 sorted()也是一个高阶函数,它可以接收一个比较函数来实现自定义排序,比较函数的定义是,传入两个待比较的元素 x, y,如果 x 应该排在 y 的前面,返回 -1,如果 x 应该排在 y 的后面,返回 1。如果 x 和 y 相等,返回 0。
    查看全部
  • filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list。
    查看全部

举报

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

微信扫码,参与3人拼团

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

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