计算机科学 3 第 18-26 关
MAGIC LOG BOOK
🦉

函数的返回值

Return Value

📦 魔法快递
⚡ 立即返回

本节课关卡

扣哒世界 · 计算机科学3 · Python · 第18–26关

Python · 本节课关卡

18 · 概念挑战. 错误的类型

先读关卡目标,观察地图,再运用本课知识。

19 · 树精树林

先读关卡目标,观察地图,再运用本课知识。

20 · 盲距

先读关卡目标,观察地图,再运用本课知识。

21 · 固定打击

先读关卡目标,观察地图,再运用本课知识。

22 · 金币猎手

先读关卡目标,观察地图,再运用本课知识。

23 · 返回Agrippa

先读关卡目标,观察地图,再运用本课知识。

24 · 金属探测器

先读关卡目标,观察地图,再运用本课知识。

25 · 概念挑战. 食人魔入侵者

先读关卡目标,观察地图,再运用本课知识。

26 · 组合挑战. 森林风暴

先读关卡目标,观察地图,再运用本课知识。

学习路线:读目标 → 看图解 → 写代码 → 运行检查

📨

魔法快递员:Return

返回值就是函数执行完任务后,带回来的结果。

就像你让猫头鹰去商店买冰淇淋,它飞回来时爪子里抓着冰淇淋。

def getEnemyX():
  enemy = findEnemy()
  return enemy.pos.x
"那个 return 就是把 X 坐标打包快递回来的动作!"
🏪
🏠
🦉
🍦
🛑

return 的两个作用

return 语句非常霸道:

  1. 📦 送出结果:把数据扔给调用者。
  2. 🚫 结束函数:后面的代码统统不执行!
def check():
  return "完成!"
  say("这句话永远不会说") # 灰色地带

一旦 return,函数立马下班!

🏃💨
交货即走,绝不回头
🕵️

程序 I:敌人坐标侦探

def getEnemyX():
  enemy = findNearestEnemy()
  if enemy:
    return enemy.pos.x
  return -1 # 没敌人时的默认值

调用它:

x = getEnemyX()
if x != -1:
  say(x)
如果找到敌人 → 返回 X 坐标
⬇️
没找到 → 返回 -1

确保总是有东西带回来!

🧠

程序 II:多重判断

判断一个东西是否符合所有条件:

def isGoodTarget(target):
  if not target: return False
  if dist(target) > 10: return False
  if target.type != "munchkin": return False
  return True # 完美目标!
提前返回策略 (Early Return):
一发现不行,马上返回 False,别浪费时间!
🛡️ 存在吗?
📏 够近吗?
👾 是小怪吗?
✅ TRUE
🍪

函数重用 (Reusability)

写好一个判断函数,可以到处用!

# 用来判断金币
if isClose(coin): moveXY(...)

# 用来判断敌人
if isClose(enemy): attack(...)
就像一个饼干模具,既可以印面团,也可以印橡皮泥!
🧩

一块拼图,处处能用

📏

距离感知 (Distance)

hero.distanceTo(target)

这是英雄的雷达,告诉你离目标有多远。

d = distanceTo(target)
if d < 15:
  return True

常用于判断是否在“攻击范围”或“捡取范围”内。

Distance: 12m
📜

大魔法师口诀

"Return 是信使,带着结果飞回来。"
"Return 是终点,跑到这里就下班!"
没写 return = 返回 None (空包裹)
🏅

我的知识宝藏 · 一页复习

扣哒世界 · 计算机科学3 · Python · 第18–26关

Python · 知识点图
关键字方法 / 函数字符串数字

魔法快递员:Return

返回值就是函数执行完任务后,带回来的结果。

return 的两个作用

return 语句非常霸道:

程序 I:敌人坐标侦探

确保总是有东西带回来!

程序 II:多重判断

判断一个东西是否符合所有条件:

函数重用

写好一个判断函数,可以到处用!

距离感知

这是英雄的雷达,告诉你离目标有多远。

hero.distanceTo(target)

本节课关卡:18. 概念挑战. 错误的类型;19. 树精树林;20. 盲距;21. 固定打击;22. 金币猎手;23. 返回Agrippa;24. 金属探测器;25. 概念挑战. 食人魔入侵者;26. 组合挑战. 森林风暴