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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 函数式编程

    查看全部
    0 采集 收起 来源:课程总结

    2019-04-01

  •  sorted()函数可对list进行排序

    比较函数的定义是,传入两个待比较的元素 x, y,如果 x 应该排在 y 的前面,返回 -1,如果 x 应该排在 y 的后面,返回 1。如果 x 和 y 相等,返回 0。

    查看全部
  • 按照 Python 的编程习惯,类名以大写字母开头,紧接着是(object),表示该类是从哪个类继承下来的。

    查看全部
  • : s.strip(rm) 删除 s 字符串中开头、结尾处的 rm 序列的字符。

    当rm为空时,默认删除空白符(包括'\n', '\r', '\t', ' ')

    查看全部
  • reduce()传入的函数 f 必须接收两个参数,reduce()对list的每个元素反复调用函数f,并返回最终结果值。

    查看全部
  • 方法定义后需要进行空行以表示结束,连续输入会被认为是一个语句块,这样肯定会出现语法异常。

    高阶函数 

    能接收函数做参数的函数

    变量可以指向函数,直接对函数进行调用


    查看全部
  • reduce(f, list) 对list中每个元素进行方法f的累积运算

    查看全部
  • str.capitalize() 将字符串转变为首字母大写

    查看全部
  • import math


    def is_sqr(x):

        return x ** 0.5 in range(1,11)

    print filter(is_sqr, range(1, 101))


    查看全部
  • if语句后面需要有冒号:


    查看全部
  • try 的作用是捕获错误,并在捕获到指定错误时执行 except 语句。

    查看全部
  • 如果我们只希望导入用到的math模块的某几个函数,而不是所有函数,可以用下面的语句:

    from math import pow, sin, log

    如果使用import导入模块名,由于必须通过模块名引用函数名,因此不存在冲突

    如果使用 from...import 导入 log 函数,势必引起冲突。这时,可以给函数起个“别名”来避免冲突:

    from math import log
    from logging import log as logger


    查看全部
  • 装饰器模式

    查看全部
  • 高阶函数可以接收函数做参数,有些时候,我们不需要显式地定义函数,直接传入匿名函数更方便。

    在Python中,对匿名函数提供了有限支持

    匿名函数 lambda x: x * x 实际上就是:

    def f(x):
        return x * x

    关键字lambda 表示匿名函数,冒号前面的 x 表示函数参数。

    匿名函数有个限制,就是只能有一个表达式不写return,返回值就是该表达式的结果。

    使用匿名函数,可以不必定义函数名,直接创建一个函数对象,很多时候可以简化代码:

    >>> sorted([1, 3, 9, 5, 0], lambda x,y: -cmp(x,y))
    [9, 5, 3, 1, 0]

    返回函数的时候,也可以返回匿名函数:

    >>> myabs = lambda x: -x if x < 0 else x 
    >>> myabs(-1)
    1
    >>> myabs(1)
    1


    查看全部
  • lambda匿名函数

    lambda argument_list: expression,其中argument_list是参数列表,它的结构与Python中函数(function)的参数列表是一样的。argument_list可以有非常多的形式,

    • a, b

    •     a=1, b=2

    •      *args

    •      **kwargs

    •      a, b=1, *args

    •      空

    expression是一个关于参数的表达式。表达式中出现的参数需要在argument_list中有定义,并且表达式只能是单行的。以下都是合法的表达式:

    •    1

    •     None

    •     a + b

    •     sum(a)

    •     1 if a >10 else 0

    •     ......

    lambda函数有如下特性:

        lambda函数是匿名的:所谓匿名函数,通俗地说就是没有名字的函数。lambda函数没有名字。

        lambda函数有输入和输出:输入是传入到参数列表argument_list的值,输出是根据表达式expression计算得到的值。

        lambda函数一般功能简单:单行expression决定了lambda函数不可能完成复杂的逻辑,只能完成非常简单的功能。由于其实现的功能一目了然,甚至不需要专门的名字来说明。

    下面是一些lambda函数示例:

        lambda x, y: x*y;函数输入是x和y,输出是它们的积x*y

        lambda:None;函数没有输入参数,输出是None

        lambda *args: sum(args); 输入是任意个数的参数,输出是它们的和(隐性要求是输入参数必须能够进行加法运算)

        lambda **kwargs: 1;输入是任意键值对参数,输出是1

    查看全部
    0 采集 收起 来源:python中闭包

    2019-03-30

举报

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

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