高级 Python 开发课程
第 章
>
第 级
异步/等待
异步复习
目标
使用 Async 函数,通过检查配额并完成浸泡葡萄酒浆果的过程来记录酒瓶生产情况。
酒瓶生产必须达到要求,以确保酒窖能够生产足够的瓶子进行库存。为了实现这一点,需要将葡萄酒浆果进行浸泡,以确保所有原料都经过发酵处理并转化为葡萄酒。
首先,走向没有地毯、纸前的黑色 X 标记处,此便签包含需要生产的产品配额以及已浸泡浆果的记录。使用 read() 函数检查配额,并记录葡萄酒浆果的数值,将其存储在名为 quota 的变量中。
一旦弄清楚需要生产多少,走向亮色 X 标记处并面向箱子,检查有多少产品已经准备好进行加工。对两个位置均使用 read() 函数以验证准备好的项目内容。创建一个名为 wine_berries 的变量,将在两个 X 标记处读取的数量相加。
由于成品数量不足以满足配额,走向右下角的金色 X 标记处,面向麻袋。使用 collect() 函数从麻袋中获取浆果,然后移动到铺有地毯的黑色 X 标记处。
有四(4)个容器正在浸泡浆果以供酿酒使用,文件中显示了哪些容器已准备好收集,哪些容器需要浸泡浆果。使用 question() 函数检查你是希望收集已经浸泡的葡萄酒浆果还是在容器中浸泡浆果。在带有黑色 X 标记的绿色和黄色地毯上,你需要收集浆果;而在带有黑色 X 标记的紫色和蓝色地毯上,则需要放置浆果。
代码编辑器中已经编写了获取产品所需的 question() 函数,其名称为 soaking_pot() :
async def soaking_pot():
answer = await player.question("Collect berries instead of soaking them?")
if answer:
player.collect("wine berries")
else:
player.place("berries")
一旦葡萄酒浆果被收集完毕,走向靠近浆果桶的左侧金色 X 标记处,使用 place() 函数放入你收集到的 "wine berries"。在你创建的变量 wine_berries 上,增加 100 磅产品,也就是之前收集的产品各增加 50 磅,方法如下:wine_berries+=100
移动到带有红色和橙色地毯的黑色 X 标记处,在红色地毯处的 X 标记上使用 write() 函数写入你目前拥有的 wine_berries 数量,格式如下:player.write("There are %d pounds of product finished" % (wine_berries))
在橙色地毯处的 X 标记上使用 write() 函数写下尚未完成的产品。为了完成该关卡,需要用 wine_berries 从 quota 中减去,计算剩余产品,方法如下:player.write("There are %d pounds of product Remaining" % (quota-wine_berries))