🗺️ 计算机科学 4
Loading...
🚂 📦 👮‍♂️

第三单元大复习

CodeCombat Unit 3 Review

循环、字典、判断、算法...
所有知识点大集合!

本节课关卡

扣哒世界 · 计算机科学4 · Python · 第36关

Python · 本节课关卡

36 · 借刀

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

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

🔄 循环家族 (Loops)

🚂 1. While 循环
while hero.gold > 20:
    hero.summon("soldier")
小火车:“只要轨道上有糖果(条件满足),我就继续前进!”
适合:不知道要循环多少次时。
📋 2. For 循环
for friend in hero.findFriends():
    hero.command(friend, "attack")
小班长:“点名啦!自动检查每一个同学。”
适合:处理列表里的每一个东西。

📦 数据处理 (Data)

🗝️ 3. 字典 (Dictionary)
target = {"x": 50, "y": 40}
魔法宝箱: 有标签(x, y)和宝藏(50, 40)。
用来存详细信息。
👬 4. 列表 (List)
soldiers = ["士兵1", "士兵2"]
points[0] = {"x": 33, "y": 42}
排队的小朋友: 按编号排队(0, 1, 2...)。
用来存一堆东西。

🚦 智能决策 (Conditions)

🚥 5. 条件判断
if enemy:
    hero.attack(enemy)
else:
    hero.move(point)
交通警察: 红灯(有敌人)就停下攻击,绿灯(没敌人)就前进。
👮‍♂️ 6. 多重条件
if enemy and enemy.team == "ogres":
    hero.attack(enemy)
安检门: 必须满足所有条件(有票? 是本人? 身高够?)才能通过!

🧮 数学运算 (Math)

➕ 7. 坐标运算
# 向右移动一小步
newX = friend.pos.x + 0.35
告诉朋友:“从你现在的位置,往右挪 0.35 步。”
⚖️ 8. 比较运算
if enemy.health > mostHealth:
    toughest = enemy
比身高: 谁的数字大,谁就是冠军!用来找最强敌人。

🗺️ 对象与位置 (Objects)

💳 9. 对象属性
enemy.health  # 生命值
enemy.team    # 队伍
enemy.type    # 类型
看身份证: 姓名、年龄、住址...了解敌人的一切。
📍 10. 位置系统
friend.pos.x  # 横坐标 (左右)
friend.pos.y  # 纵坐标 (上下)
棋盘坐标: X是排数,Y是列数,合起来就是精确位置!

🛠️ 实用工具 (Helpers)

🏭 11. Range 函数
for i in range(4):
    hero.summon("soldier")
数字工厂: 你说“生产4个”,工厂就造出编号 0,1,2,3。
🔢 12. Len 函数
count = len(hero.findFriends())
计数器: 班长快速点人头:“1,2,3...总共8个同学!”

🧠 高级编程思维

🏆 13. 寻找最大值
best = None
maxH = 0
for e in enemies:
    if e.health > maxH:
        best = e
选冠军: 记住当前最厉害的,看到更厉害的就换掉!
🎎 14. 循环嵌套
while True:         # 外层:永远监控
    for f in friends: # 内层:检查每个朋友
        # ...
俄罗斯套娃: 大圈套小圈,外层负责“永远”,内层负责“所有”。

我的知识宝藏 · 一页复习

扣哒世界 · 计算机科学4 · Python · 第36关

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

🔄 循环家族

while 在条件成立时重复;for 依次遍历;嵌套循环会为每一轮外层执行完整内层。

hero.summon("soldier")

📦 数据处理

列表用索引取元素,字典用键取值;遍历时注意范围并及时更新数据。

🚦 智能决策

用 if/else 按条件选择行动;先判断目标是否存在,再读取属性。

hero.attack(enemy)

🧮 数学运算

用加减计算坐标和计数;用比较运算形成条件,注意括号和运算顺序。

🗺️ 对象与位置

位置用横坐标 x、纵坐标 y 表示;目标坐标表示地点,不是要走的步数。

🛠️ 实用工具

把重复步骤封装为函数,分清输入、处理和输出;一次验证一个小步骤。

hero.summon("soldier")

🧠 高级编程思维

把重复步骤封装为函数,分清输入、处理和输出;一次验证一个小步骤。

本节课关卡:36. 借刀