blog.dopana

Back

欢迎来到《教孩子学 Python》系列的最后一课!🚀

到目前为止,我们已经教会了小机器人说话、记忆和自己做决定。但是,如果我们想让它做一个复杂的庆祝动作——比如跳起来、拍拍手、然后大喊 “耶!“——难道每次我们赢了游戏都要重新敲一遍这几行代码吗?

反复输入相同的代码实在是太麻烦了。今天,我们要学习如何把代码打包成一个自定义的快捷“按钮”,这个按钮就叫做 函数(Functions)!

什么是函数?(食谱的比喻)#

你可以把函数想象成菜谱书里的一道食谱,或者是游戏手柄上的一个自定义动作按键。

  1. 定义食谱 (def):你把做菜的步骤一次性写在菜谱上。
  2. 调用函数:每次你想吃这道菜的时候,直接喊出它的名字就可以了!
graph TD
    Call["调用: celebrate()"] --> Recipe["食谱: def celebrate():"]
    Recipe --> Step1["1. 跳起来! 🤸"]
    Recipe --> Step2["2. 拍拍手! 👏"]
    Recipe --> Step3["3. 大喊耶! 🎉"]

在 Python 中,我们使用单词 def(也就是英文 define “定义” 的缩写)来创造一个函数:

def celebrate():
    print("跳起来! 🤸")
    print("拍拍手! 👏")
    print("耶! 🎉")
python

这时候,小机器人已经记住了这个“食谱”,但它还不会动手去做。想要让它执行这些动作,我们必须写下函数名字并带上括号 (),这叫 调用(call) 函数:

celebrate()
python

带有原料的函数(参数)#

有些食谱需要添加原料。比如你烤蛋糕的时候,可以选择放巧克力还是草莓。

在函数里,这些原料被称为 参数(Parameters)。我们把它们写在括号里面:

def greet(name):
    print("你好," + name + "!欢迎加入我们的队伍! 🤝")
python

现在,当我们在调用这个函数的时候,就可以把“原料”(具体的名字)装进括号里传给它:

greet("亚历克斯")
greet("艾玛")
python

小机器人会分别回答:

  • “你好,亚历克斯!欢迎加入我们的队伍! 🤝”
  • “你好,艾玛!欢迎加入我们的队伍! 🤝”

拿回计算结果 (return)#

有时候,我们不光想让函数打印文字,还想让它帮我们算一个数并把结果交还给我们(就像自动售货机吐出一罐可乐一样)。这时我们要使用 return(返回)关键字:

def double_number(number):
    return number * 2
python

现在,我们就可以把拿回来的结果存进一个变量盒子里了:

magic_number = double_number(5)
print(magic_number) # 机器人会说 10
python

动手试一试! 🎮#

打开你的 Python 编辑器,试着自己创造一个施放魔法的自定义指令吧:

  1. 定义一个名叫 cast_spell 的函数,让它接收一个参数 spell_name
  2. 在函数内部,让机器人打印:"阿布拉卡达布拉!你施放了 " + spell_name + "! ⚡"
  3. 分别传入 "火球术""隐身术" 来调用这个函数。

太恭喜你了!你已经完成了 5 篇孩子们的 Python 学习系列。现在你已经懂得了如何与电脑对话、保存变量、做出决定、重复动作以及编写自定义指令。你正式成为了一名初级小程序员!🎉 记得要继续练习、多写有趣的小程序哦!

参考资料#