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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • def calc_prod(lst): def lazy_prod(): def prod(x,y): return x*y return reduce(prod,lst) return lazy_prod f = calc_prod([1, 2, 3, 4]) print f()
    查看全部
  • reduce()还可以接收第3个可选参数,作为计算的初始值
    查看全部
  • reduce()传入的函数 f 必须接收两个参数,reduce()对list的每个元素反复调用函数f,并返回最终结果值
    查看全部
  • 由于list包含的元素可以是任何类型,因此,map() 不仅仅可以处理只包含数值的 list,事实上它可以处理包含任意类型的 list,只要传入的函数f可以处理这种数据类型。
    查看全部
  • 使用math.sqrt时不需要使用().
    查看全部
  • 变量可以指向函数,函数的参数可以用来接收变量;一个函数可以接收另一个函数作为参数,能接收函数作参数的函数就是高阶函数。
    查看全部
  • 变量可以指向一个函数,我们可以直接对变量进行调用。
    查看全部
  • Python帮助文档中对sorted方法的讲解: sorted(iterable[,cmp,[,key[,reverse=True]]]) 作用:返回一个经过排序的列表。 第一个参数是一个iterable,返回值是一个对iterable中元素进行排序后的列表(list)。 可选的参数有三个,cmp、key和reverse。 1)cmp指定一个定制的比较函数,这个函数接收两个参数(iterable的元素),如果第一个参数小于第二个参数,返回一个负数;如果第一个参数等于第二个参数,返回零;如果第一个参数大于第二个参数,返回一个正数。默认值为None。 2)key指定一个接收一个参数的函数,这个函数用于从每个元素中提取一个用于比较的关键字。默认值为None。 3)reverse是一个布尔值。如果设置为True,列表元素将被倒序排列。 key参数的值应该是一个函数,这个函数接收一个参数并且返回一个用于比较的关键字。对复杂对象的比较通常是使用对象的切片作为关键字
    查看全部
  • #-*-coding:utf-8-*- class Fib(): def __init__(self,num): self.L=[] self.num=num def fib(x): if x == 0: return 0 elif x == 1: return 1 else: return (fib(x - 1) + fib(x - 2)) for i in range(self.num): self.L.append(fib(i)) def __str__(self): return str(self.L) def __len__(self): return len(self.L) f=Fib(10) print(f) print(len(f))
    查看全部
    0 采集 收起 来源:python中 __len__

    2018-03-13

  • 这种内层函数引用了外层函数的变量(参数也算变量),然后返回内层函数的情况,称为闭包(Closure)。
    查看全部
    0 采集 收起 来源:python中闭包

    2018-03-13

  • Rational类虽然可以做加法,但无法做减法、乘方和除法,请继续完善Rational类,实现四则运算。 提示: 减法运算:__sub__ 乘法运算:__mul__ 除法运算:__div__ ?不会了怎么办 如果运算结果是 6/8,在显示的时候需要归约到最简形式3/4。 参考代码: def gcd(a, b): if b == 0: return a return gcd(b, a % b) class Rational(object): def __init__(self, p, q): self.p = p self.q = q def __add__(self, r): return Rational(self.p * r.q + self.q * r.p, self.q * r.q) def __sub__(self, r): return Rational(self.p * r.q - self.q * r.p, self.q * r.q) def __mul__(self, r): return Rational(self.p * r.p, self.q * r.q) def __div__(self, r): return Rational(self.p * r.q, self.q * r.p) def __str__(self): g = gcd(self.p, self.q) return '%s/%s' % (self.p / g, self.q / g) __repr__ = __str__ r1 = Rational(1, 2) r2 = Rational(1, 4) print r1 + r2 print r1 - r2 print r1 * r2 print r1 / r2
    查看全部
  • 一、掌握函数式编程 二、掌握面向对象编程 三、能够编写模块化的程序
    查看全部
    0 采集 收起 来源:课程介绍

    2018-03-13

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

    2018-03-13

  • 内层函数引用了外层函数的变量(参数也算变量),然后返回内层函数的情况,称为闭包(Closure)
    查看全部
    0 采集 收起 来源:python中闭包

    2018-03-13

  • 注意: s.strip(rm) 删除 s 字符串中开头、结尾处的 rm 序列的字符。 当rm为空时,默认删除空白符(包括'\n', '\r', '\t', ' '),
    查看全部

举报

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

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