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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • import operator class Person(object): pass p1 = Person() p1.name = 'Bart' p2 = Person() p2.name = 'Adam' p3 = Person() p3.name = 'Lisa' L1 = [p1, p2, p3] L2 = sorted(L1,key=lambda p1,p2:operator.eq(p1.name,p2.name)) print L2[0].name print L2[1].name print L2[2].name
    查看全部
  • from __future__ import unicode_literals s = 'am I an unicode?' print isinstance(s, unicode)
    查看全部
  • try: import simplejson except ImportError: import json print json.dumps({'python':2.7})
    查看全部
  • 假设要转换大量的二进制字符串,每次都传入int(x, base=2)非常麻烦,于是,我们想到,可以定义一个int2()的函数,默认把base=2传进去: def int2(x, base=2): return int(x, base) 这样,我们转换二进制就非常方便了 functools.partial() 就是帮我们创建一个偏函数的 最前面要import functools
    查看全部
    0 采集 收起 来源:python中偏函数

    2017-07-18

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

    2017-07-18

  • from functools import reduce def calc_prod(lst): #def cheng(): def f(x,y): return x*y return reduce(f,lst,1) #return cheng f = calc_prod([1, 2, 3, 4]) print (f) 返回的是函数值 def calc_prod(lst): def cheng(): def f(x,y): return x*y return reduce(f,lst,1) return cheng f = calc_prod([1, 2, 3, 4]) print f() 返回的是函数,加()再返回值
    查看全部
  • import functools def cmp_ignore_case(s1,s2): s1 = s1.lower() s2 = s2.lower() if s1 < s2: return -1 if s1 > s2: return 1 return 0 sorted_ignore_case = functools.partial(sorted,cmp_ignore_case) print sorted_ignore_case(['bob', 'about', 'Zoo', 'Credit'])
    查看全部
    0 采集 收起 来源:python中偏函数

    2018-03-22

  • class Person(object): __slots__ = ('name', 'gender') def __init__(self, name, gender): self.name = name self.gender = gender class Student(Person): __slots__ = ('score') def __init__(self, name, gender,score): super(Student, self).__init__(name, gender)#用于调用父类的实例 self.score = score s = Student('Bob', 'male', 59) s.name = 'Tim' s.score = 99 print s.score
    查看全部
    0 采集 收起 来源:python中 __slots__

    2017-07-18

  • @property---这是关键字,固定格式,能让方法当“属性”用。 @score.setter---前面的"score"是@property紧跟的下面定义的那个方法的名字,"setter"是关键字,这种“@+方法名字+点+setter”是个固定格式与@property搭配使用。 有个上面这个解释就一下子能理解了,没有就半天才搞明白哪冒出来的东西。
    查看全部
    0 采集 收起 来源:python中 @property

    2018-03-22

  • f.__name__ 函数名称
    查看全部
  • 装饰器
    查看全部
  • s.strip()删除空白 filter(比较函数,list)按比较过滤掉不符合条件的元素
    查看全部
  • lambda x:x*x 匿名函数
    查看全部
  • (lambda 参数:表达式 , 要传的值])
    查看全部
  • (lambda 变量:变量的表达式,变量的类型)
    查看全部

举报

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

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