🐸

魔法图纸

Python 基础python-architect-01-blueprint
奖励: 100 XP
|

重复的劳作

大法师要求 Hoppy 在工坊周围建造 3 座防御塔

Hoppy 挥舞着魔杖,累得满头大汗: “建造一座红色塔!” ... “建造一座蓝色塔!” ... “建造一座绿色塔!”

大法师摇了摇头:“年轻的架构师啊,如果你要建 100 座塔怎么办?不要做重复的苦力,去画一张 魔法图纸 (Blueprint) 吧。”

绘制图纸 (Defining a Function)

在 Python 中,我们用 函数 (Function) 来代表图纸。一旦画好,你就可以无限次地使用它。

def build_tower(color):
  print("正在建造一座 " + color + " 的塔...")
  print("建造完成!")

这里有几个关键点:

  1. def: 告诉工坊“我要开始画图纸了”。
  2. build_tower: 给图纸起的名字。
  3. (color): 预留插槽 (Parameter)。不管是红色还是蓝色,塔的结构是一样的,只有颜色不同。

使用图纸 (Calling a Function)

光有图纸还不够,你必须施法启动它。

build_tower("Red")   # 咻!一座红塔平地而起
build_tower("Blue")  # 咻!一座蓝塔

你的任务

1
定义图纸

创建一个名为 cast_fireball 的函数(图纸)。

2
添加插槽

给它一个参数 power (威力大小)。

3
编写内容

在函数内部,print 一句话:比如 "施放了威力为 " + str(power) + " 的火球!"

4
批量施法

在代码最后,调用 3 次这个函数,威力分别是 10, 50, 100

缩进很重要

图纸里的内容(函数体)必须缩进(前面空 4 格)。如果没缩进,它们就会掉出图纸外面!

参考答案
点击展开
参考答案:
def cast_fireball(power):
  # 记得要把 power 变成字符串才能拼接哦
  print("施放了威力为 " + str(power) + " 的火球!")

cast_fireball(10)
cast_fireball(50)
cast_fireball(100)
高级技巧
想更进一步?点击展开

F. 现实桥接 (Bridge to Reality)

  • 魔法图纸 = 函数定义 (Function Definition)
  • 预留插槽 = 参数 (Parameters/Arguments)
  • 启动图纸 = 函数调用 (Function Call)
  • DRY 原则: 程序员有一条铁律叫 "Don't Repeat Yourself"(不要自我重复)。函数就是实现 DRY 的最好工具。
Loading...
终端输出
Terminal
Ready to run...