从函数返回
Coddy Python Lambda 函数 课程的第 4 课,共 9 课。
lambda 函数的另一个有趣用法是从函数中返回它。
例如:
def power_of(a):
return lambda b : b ** a
cube = power_of(3) # 保存了 lambda b : b ** 3
square = power_of(2) # 保存了 lambda b : b ** 2
square_root = power_of(0.5) # 保存了 lambda b : b ** 0.5
print(cube(4)) # 输出 64
print(square(4)) # 输出 16
print(square_root(4)) # 输出 2如你所见,这是一种生成多个小函数的方法。
也可以创建一个返回 lambda 的 lambda(当它是一个表达式时):
power_of = lambda a : lambda b : b ** a
print(power_of(2)(5)) # 输出 25 = 5 ** 2挑战
简单创建一个名为 message_constructor 的函数,它接收两个字符串:名字和姓氏。姓氏可以是 None。
该函数会根据以下条件,将两个参数组合成一个姓名:
- 如果只有名字存在,那么姓名就等于名字。
- 如果两个参数都存在,函数就会用一个空格将它们组合起来。
该函数会返回一个 lambda 函数,该函数接收一个参数,并返回一个字符串。
查看测试用例,了解 lambda 函数所需的格式。
亲手试试
def message_constructor(first, last):
# 在这里编写代码Python Lambda 函数中的所有课
自己练习: Python 在线编译器