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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • def __init__(self, name, gender, **kw): self.name=name self.gender=gender for k,v in kw.items(): setattr(self,k,v)
    查看全部
  • 中文-需要utf-8编码
    查看全部
  • 函数内部的函数可以访问外部函数的局部变量,包括参数。 并且返回一个新的函数。
    查看全部
  • 由于count前加了双下划线故变成了私有属性,则在类外部无法进行访问
    查看全部
  • class Person(object): count = 0 def __init__(self, name): self.name = name Person.count += 1 在Person类中为count赋予初始值0 由于Person的初始化方法必会调用__init__方法,故在此方法里面进行类属性的处理
    查看全部
  • 函数定义: 在定义时设置默认参数,函数返回时会给变量赋值 def f g=f() 函数调用 g() 调用结果 def g
    查看全部
    0 采集 收起 来源:python中闭包

    2017-11-24

  • 由于初始化时使用了job='Student'格式进行属性赋值,即键值对形式,也就是dict形式,故在初始化方法已知属性后添加**kw接收其他属性即属性值 在__init__方法内部,对kw进行遍历,并使用系统方法进行属性赋值
    查看全部
  • 利用filter(),可以完成很多有用的功能,例如,删除 None 或者空字符串: def is_not_empty(s): return s and len(s.strip()) > 0 filter(is_not_empty, ['test', None, '', 'str', ' ', 'END']) 结果:['test', 'str', 'END']
    查看全部
  • __init__.py文件,用于区分包和普通目录
    查看全部
  • 内层函数引用了外层函数的变量(参数也算变量),然后返回内层函数的情况,称为闭包(Closure)。 闭包的特点是返回的函数还引用了外层函数的局部变量,所以,要正确使用闭包,就要确保引用的局部变量在函数返回后不能变。
    查看全部
    0 采集 收起 来源:python中闭包

    2017-11-24

  • 1.在Python中,函数其实是一个对象: 2.__name__ 3.print 'My name is %s...' % self.name 4.a,b=b,a+b 等于k=a a=b b=k+b
    查看全部
    0 采集 收起 来源:python中 __call__

    2017-11-24

  • 但 sorted()也是一个高阶函数,它可以接收一个比较函数来实现自定义排序,比较函数的定义是,传入两个待比较的元素 x, y,如果 x 应该排在 y 的前面,返回 -1,如果 x 应该排在 y 的后面,返回 1。如果 x 和 y 相等,返回 0。
    查看全部
  • 利用了递归函数来求公约数。 化简分数代码: def __str__(self): if self.p<self.q: k=self.p else: k=self.q for x in range(k,0,-1): if self.p%x==0 and self.q%x==0: self.p=self.p / x self.q=self.q / x return '%s/%s'%(self.p,self.q)
    查看全部
  • 要实现带参数的@performance,就需要实现: my_func = performance('ms')(my_func) 需要3层嵌套的decorator来实现。 import time def performance(unit): def perf_decorator(f): def wrapper(*args, **kw): t1 = time.time() r = f(*args, **kw) t2 = time.time() t = (t2 - t1) * 1000 if unit=='ms' else (t2 - t1) print 'call %s() in %f %s' % (f.__name__, t, unit) return r return wrapper return perf_decorator @performance('ms') def factorial(n): return reduce(lambda x,y: x*y, range(1, n+1)) print factorial(10)
    查看全部
  • 继承:新类不必从头编写,可以直接从现有类继承,就自动拥有了现有类的所有功能,只需要编写需要的新功能即可。 继承优点:复用已有代码,自动拥有了现有类的所有功能,可精简代码。 1、如果一个实例是一个子类,则它也是一个父类;如果实例是父类,则它不是子类。 2、子类和父类是is关系 is关系指的是:黄鹂是鸟,却不能说鸟是黄鹂 has关系指的是:学生有一本书,不能说学生是一本书 两个has关系的类不能继承,只能以属性组合到类中,如使用Book类的bookName-> self.book=Book(bookName) 继承特点: 1、总是从某个类继承,没有合适的类时使用object类继承 2、调用super().__init__方法(初始化父类) 如Student类从父类继承name和gender:super(Student,self).__init__(name,gender)
    查看全部

举报

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

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