🐸

微型咒语

Python 基础python-architect-06-lambda
奖励: 150 XP
|

折纸魔法

Hoppy 需要将仓库里的数字魔石进行 翻倍处理

大法师:“不要每次都郑重其事地架起绘图桌 (def) 去画一张大图纸。对于这种只有一行的小逻辑,用 折纸魔法 (Lambda) 就好。”

它随手折、随手用、随手扔,非常轻便。

微型咒语 (Lambda)

# 传统方式 (太重了)
def double(x):
  return x * 2

# Lambda 方式 (轻量级)
double = lambda x: x * 2

语法核心:lambda 输入: 输出。 注意:它不需要return,冒号后面自动就是返回值。

你的任务

1
创建微型咒语

创建一个名为 square 的 lambda 函数,它的作用是计算平方(x * x)。

2
测试咒语

打印 square(5),应该输出 25。

3
高级用法 (Map)

我们有一个列表 nums = [1, 2, 3, 4]。 使用 list(map(square, nums)) 来一次性把它们都变成平方数,并打印结果。

Map 的力量

map(咒语, 列表):会对列表里的每一个元素施放这道咒语。这是处理批量数据神器!

参考答案
点击展开
参考答案:
nums = [1, 2, 3, 4]

# 创建 lambda
square = lambda x: x * x

print(square(5)) # 25

# 配合 map 使用
print(list(map(square, nums))) # [1, 4, 9, 16]
高级技巧
想更进一步?点击展开

F. 现实桥接 (Bridge to Reality)

  • 折纸魔法 = 匿名函数 (Anonymous Function)
  • 在 Python 中,lambda 只能包含一个表达式
  • 它最常配合高阶函数使用,比如 map() (映射), filter() (过滤), 或者 sorted() (排序)。
    • 例如:sorted(items, key=lambda x: x['price']) —— 按价格排序。
Loading...
终端输出
Terminal
Ready to run...