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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰
  • 们也很难把原函数的所有必要属性都一个一个复制到新函数上,所以Python内置的functools可以用来自动化完成这个“复制”的任务
    查看全部
  • 要实现带参数的@performance,就需要实现: my_func = performance('ms')(my_func) 需要3层嵌套的decorator来实现。
    查看全部
  • * 用来传递任意个无名字参数,这些参数会一个Tuple的形式访问;**用来处理传递任意个有名字的参数,这些参数用dict来访问。
    查看全部
  • 一个类实例也可以变成一个可调用对象,只需要实现一个特殊方法__call__()。
    查看全部
    0 采集 收起 来源:python中 __call__

    2015-04-06

  • def __call__(self, num): a, b, L = 0, 1, [] for n in range(num): L.append(a) a, b = b, a + b return L
    查看全部
    0 采集 收起 来源:python中 __call__

    2015-04-06

  • __slots__是指一个类允许的属性列表
    查看全部
    0 采集 收起 来源:python中 __slots__

    2015-04-06

  • 即使__init__.py是空文件,也必须要存在
    查看全部
  • def ignore_case(x, y): return cmp(x.lower(), y.lower()) sorted_ignore_case = functools.partial(sorted, cmp=ignore_case) 经实验,如果把functools.partial(sorted, cmp=ignore_case)中的cmp换成其他名字,会报错,这证明这个参数名字需要特定的名称,也即是原函数中规定的参数名字(本例中原函数名是sorted(iterable, cmp=None, key=None, reverse=False))
    查看全部
    0 采集 收起 来源:python中偏函数

    2015-04-06

  • functools.partial就是帮助我们创建一个偏函数.所谓偏函数是指通过固定参数来使用某函数的部分功能. 如: 进制转换函数int(x, y),将x转为y进制数 若固定想转换为2进制,每次传入y=2太过繁琐,重新定义函数 def int2(x): return int(x, base=2) 也有些麻烦,所以使用functools.partial,不需要我们自己定义int2() >>> import functools >>> int2 = functools.partial(int, base=2) >>> int2('1000000') 64 >>> int2('1010101') 85
    查看全部
    0 采集 收起 来源:python中偏函数

    2018-03-22

  • @property def grade(self): if self.__score >= 80: return 'A' elif self.__score >= 60: return 'B' else: return 'C'
    查看全部
    0 采集 收起 来源:python中 @property

    2018-03-22

  • 装饰器函数,可以用装饰器函数把 get/set 方法“装饰”成属性调用:
    查看全部
    0 采集 收起 来源:python中 @property

    2015-04-06

  • 在Python 3.x中,字符串统一为unicode,不需要加前缀 u,而以字节存储的str则必须加前缀 b。
    查看全部
  • 由于decorator返回的新函数函数名已经不是'f2',而是@log内部定义的'wrapper'。这对于那些依赖函数名的代码就会失效。decorator还改变了函数的__doc__等其它属性。如果要让调用者看不出一个函数经过了@decorator的“改造”,就需要把原函数的一些属性复制到新函数中 Python内置的functools可以用来自动化完成这个“复制”的任务,注意@functools.wraps应该作用在返回的新函数上 import functools def log(f): @functools.wraps(f) def wrapper(*args, **kw): print 'call...' return f(*args, **kw) return wrapper
    查看全部
  • 利用import ... as ...,还可以动态导入不同名称的模块。 try: import json except ImportError: import simplejson as json print json.dumps({'python':2.7})
    查看全部
  • try 的作用是捕获错误,并在捕获到指定错误时执行 except 语句。
    查看全部

举报

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

微信扫码,参与3人拼团

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

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