下载APP
登录
关闭
讲堂
算法训练营
Python 进阶训练营
企业服务
极客商城
客户端下载
兑换中心
渠道合作
推荐作者
当前播放: 26 | Lambda表达式
00:00 / 00:00
标清
  • 标清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看

零基础学Python

共71讲 · 71课时·约540分钟
16024
免费
01 | Python语言的特点
免费
02 | Python的发展历史与版本
免费
03 | Python的安装
免费
04 | Python程序的书写规则
免费
05 | 基础数据类型
免费
06 | 变量的定义和常用操作
07 | 序列的概念
08 | 字符串的定义和使用
09 | 字符串的常用操作
10 | 元组的定义和常用操作
11 | 列表的定义和常用操作
12 | 条件语句
13 | for循环
14 | while循环
15 | for循环语句中的if嵌套
16 | while循环语句中的if嵌套
17 | 字典的定义和常用操作
18 | 列表推导式与字典推导式
19 | 文件的内建函数
20 | 文件的常用操作
21 | 异常的检测和处理
22 | 函数的定义和常用操作
23 | 函数的可变长参数
24 | 函数的变量作用域
25 | 函数的迭代器与生成器
26 | Lambda表达式
27 | Python内建函数
28 | 闭包的定义
29 | 闭包的使用
30 | 装饰器的定义
31 | 装饰器的使用
32 | 自定义上下文管理器
33 | 模块的定义
34 | PEP8编码规范
35 | 类与实例
36 | 如何增加类的属性和方法
37 | 类的继承
38 | 类的使用-自定义with语句
39 | 多线程编程的定义
40 | 经典的生产者和消费者问题
41 | Python标准库的定义
42 | 正则表达式库re
43 | 正则表达式的元字符
44 | 正则表达式分组功能实例
45 | 正则表达式库函数match与s...
46 | 正则表达式库替换函数sub...
47 | 日期与时间函数库
48 | 数学相关库
49 | 使用命令行对文件和文件夹...
50 | 文件与目录操作库
51 | 机器学习的一般流程与NumP...
52 | NumPy的数组与数据类型
53 | NumPy数组和标量的计算
54 | NumPy数组的索引和切片
55 | pandas安装与Series结构
56 | Series的基本操作
57 | Dataframe的基本操作
58 | 层次化索引
59 | Matplotlib的安装与绘图
60 | 机器学习分类的原理
61 | Tensorflow的安装
62 | 根据特征值分类的模型和代...
63 | 网页数据的采集与urllib库
64 | 网页常见的两种请求方式ge...
65 | HTTP头部信息的模拟
66 | requests库的基本使用
67 | 结合正则表达式爬取图片链...
68 | Beautiful Soup的安装和...
69 | 使用爬虫爬取新闻网站
70 | 使用爬虫爬取图片链接并下...
71 | 如何分析源代码并设计合理...
本节摘要

课程源码、课件及课后作业地址:

https://github.com/wilsonyin123/geekbangpython

精选留言(14)

  • 2018-06-25
    没讲到lamda怎么用的例子
    12
  • 2018-10-04
    课程精简,比我之前被坑网上买的几千块钱的课程好太多了,那个基本废弃了,每节课两个多小时,无语,学完之后,我打算换工作了

    作者回复: 谢谢,简明扼要的让初学者能够掌握语言的使用,是设置这门课程的初衷,在了解基础语法之后要继续学习更多的框架和库才能更轻松的搞定工作上的需求,继续加油吧!

    5
  • 2018-09-05
    lambda讲解的太简单了,最简单的一个如何使用都没有讲到

    作者回复: 大家应该是被lambda的陌生写法吓到了,它没有那么复杂的,把lambda当作是个连函数名、函数定义都省略的函数调用就可以了,例如你需要使用函数这种形式,而函数内容又很简单,就没有必要为函数起一个标准又冗长的名字,甚至去定义这个函数,直接换成lambda拿去用就好了。
    如需要定义一个函数输入两个参数返回两个参数的和,函数和lambda的写法是:
    # 定义
    def add(x,y):
        return x+y

    # 调用
    print(add(5,6))

    #lambda 写法
    add2 = lambda x,y : x+y
    print(add2(5,6))

    4
  • 2019-09-20
    def fun2(Item):
          return(item[1])
    想问一下,为什么要返回列表的第2位呢,就是为什么是[1]?

    作者回复: 视频中的演示是希望取出字典的value, 字典的key是第一位,第二位是value

    2
  • 2019-02-28
    def true():
        return true,True

    结果是:
    (<function true at 0x0000000000A61268>, True)

    想问下小写的true返回的是什么东西来的,跟大写的True区别那么大
    展开

    作者回复: 大写的True是python的关键字,是bool类的两个实例(True和False),小写的true是这里你定义的函数啊

    1
  • 2018-10-10
    怎么选中多行然后注释和缩进呢?

    作者回复: 这是Pycharm这个IDE自带的功能,选中多行后使用tab键可以批量缩进,使用ctrl+/ 可以批量注释

    1
  • 2018-08-14
    后面没有讲到lambda表达式怎么调用呀

    作者回复: 1 当你需要使用函数而不想纠结该用什么名字的时候使用lambda表达式
    2 当一个函数很短小,功能很简单,而且写成lambda在阅读源代码很简洁的时候,会使用lambda表达式代替函数来进行书写

    1
  • 2018-06-18
    老师 lambda表达式要怎么调用呢

    作者回复: 把lambda表达式当成是没有名字的函数就可以,lambda关键字后面跟着的变量就是函数的返回值,多数用在编写简单函数上面,比如:
    定义一个函数它的功能是为传入的参数+1之后返回,定义和调用要远远比实现功能更复杂,这时候就可以改写为lambda表达式了。
    def testfunc(a_num):

        sum = a_num + 1

        return sum


    var = testfunc(5)

    print(var)




    # 将上面的testfunc函数改为lambda表达式

    var = lambda b_num : b_num + 1

    print(var(5))

    1
  • 2018-06-12
    请问:交互模式下如何换行?python3.6 64bit
    1
  • 2019-07-02
    有多条语句的函数怎么转换为lamba表达式?

    作者回复: 要看具体的函数,不是所有的函数都能写为lambda表达式

  • 2019-03-31
    不知道lamba表达式与函数能不能这么理解:函数名不再使用,改为lamba,原来函数的形参放在lamba表达式后作为参数,原来函数的return语句后面的返回值放在lamba表达式的冒号后面

    作者回复: 是的,按照白话解释没问题。它和内建函数BIF(built-in functions)组合起来有很大威力,这些内建函数有:
    filter() zip() map() reduce()

  • 2019-03-15
    请问为什么返回 return item[1]
    这个没看懂

    作者回复: 这里的 return 是为了演示lambda表达式的“演化”过程。
    lambda 表达式的语法结构是 :
    lambda 形参列表 : 函数返回值表达式语句

    为了让大家理解方便,我们演示了一个需求--去取字典的value值,如果用lambda表达式书写是:
    lambda item: item[1]
    如果给lambda表达式(也就是匿名函数)加上函数名等同于我们之前学习的函数写法:
    def dictvalue(item):
        return item[1]

  • 2018-09-26
    老师 我看到您再敲代码时使用了不少快捷键吧。
    比如 先输入了a+b,然后在前面输了print,突然就在a+b外面多了个括号了,这些快捷操作是怎么实现的,可以简单讲下吗?

    然后比如敲 'a'+'b'+'c',我看您很快的输出了,应该是有窍门吧

    作者回复: 这是pycharm 图形工具自带的补全功能,输入左侧括号,右侧会进行补全,不是快捷键实现的。

    1
  • 2018-06-20
    老师lamdba表达式,我看有文章说只是为了减少简单函数的定义才用,对于效率是没有什么提高的,只是让代码看起来更简洁是吗?

    作者回复: 如果编码效率也算效率的一种,那匿名函数(lambda)也算得上提升效率的一种手段了。匿名函数比较像电影里出现的群众演员,可能出场几秒钟就被主角突突突了,还有必要知道他叫什么名字,交代背景吗?在python中如果需要以函数形式调用,而且仅仅使用很少次数,函数内容也很简单的话就不需要精心定义一个函数名再调用他们了,匿名函数就是这样一类,定义和调用写在一起,还不需要定义名字的函数。