Python 开发课程
第 章
>
第 级

条件
中断和继续语句

目标

使用循环条件清除建筑物之间通道中的杂草。

建筑物之间的通道长满了杂草,利用循环将所有杂草收集并处理。有多种方法可以通过使用循环条件来自动化此过程。

创建一个名为 bag 的变量,并用它来存储你拾取的杂草。使用 while 循环和条件来自动化该过程,总共有十 (10) 株杂草。

while True: player.move_forward() bag += 1 if bag == 10: break

通过将 while 循环设为 True ,除非使用操作符 break 结束循环,否则循环不会结束。每次循环会将一株杂草加入袋子,并检查已经拾取的杂草数量以决定是否退出循环。if 语句用于检查循环是否应该 break ,它会检查 bag 中的杂草数量是否已达到。

穿过通道后,使用 for 循环通过在 X 标记处使用 place() 函数将杂草投放到容器中。然而,每个容器之间的步数是不均匀的,因为中间有一个间隔。通过使用操作符 continue ,可以通过 if 语句测试条件来跳过循环。

for x in range(3): player.move_forward() if x == 1: continue player.turn_right() player.place(bag/2) player.turn_left()

在上面的代码中,if 语句检查 x ,即循环次数是否为 1 。此 for 循环根据 range() 运行三 (3) 次,因为 x0 开始运行,它运行 012 直到完成循环。由于检查循环次数是否为 1 ,在满足该条件时,continue 下的代码将不会运行而是会被跳过。通过这种方式,我们可以通过跳过中间的循环避免两个容器之间的空隙。

由于有两个 (2) 箱子,使用 place() 函数通过将储存在 bag 变量中的总量除以二来投放杂草,如此: player.place(bag/2)

一旦收集并将杂草放置在正确的位置,达到由星标标记的出口以完成关卡。

代码书