作者回复: 大家应该是被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))
作者回复: 谢谢,简明扼要的让初学者能够掌握语言的使用,是设置这门课程的初衷,在了解基础语法之后要继续学习更多的框架和库才能更轻松的搞定工作上的需求,继续加油吧!
作者回复: 视频中的演示是希望取出字典的value, 字典的key是第一位,第二位是value
作者回复: 如果编码效率也算效率的一种,那匿名函数(lambda)也算得上提升效率的一种手段了。匿名函数比较像电影里出现的群众演员,可能出场几秒钟就被主角突突突了,还有必要知道他叫什么名字,交代背景吗?在python中如果需要以函数形式调用,而且仅仅使用很少次数,函数内容也很简单的话就不需要精心定义一个函数名再调用他们了,匿名函数就是这样一类,定义和调用写在一起,还不需要定义名字的函数。
作者回复: 大写的True是python的关键字,是bool类的两个实例(True和False),小写的true是这里你定义的函数啊
作者回复: 这是Pycharm这个IDE自带的功能,选中多行后使用tab键可以批量缩进,使用ctrl+/ 可以批量注释
作者回复: 1 当你需要使用函数而不想纠结该用什么名字的时候使用lambda表达式 2 当一个函数很短小,功能很简单,而且写成lambda在阅读源代码很简洁的时候,会使用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))
作者回复: 当然有了,在课程第一讲有提供。 我再发一次给你 https://github.com/wilsonyin123/geekbangpython
作者回复: 在交互模式下 直接输入i 就可以, 但是在pycharm先要用print(i) 方式,使用print() 语句输出