丁丁猫python起跑第10天

论坛 期权论坛 期权     
B座17楼   2019-7-28 23:29   5303   0


10 天

酒店每层有左右两部电梯,客人会按“up上”或者“down下”按钮。
你设计的程序满足下面规则:
当两部电梯都在一层时,优先打开右边的门
当两部电梯都不在一层时,离客人最近的电梯响应下到一层
为此,你需要描述电梯的初始状态,通过函数定义返回电梯的终止状态
elevator(0, 1, 0) # => "left"
elevator(0, 1, 1) # => "right"
elevator(0, 1, 2) # => "right"
elevator(0, 0, 0) # => "right"
elevator(0, 2, 1) # => "right"






Okay,两部电梯现在你已经搞定
那么电梯超过3部呢?如何找到离你最近的电梯?
你一定想到用之前学过的enumerate 找到两个数组中index相同的值
返回离你最近的电梯

还有更直观简洁的办法?

任务式学习的精髓在于,首先孩子产生疑惑:
现有的办法不灵了!
现有的办法有点烦?
现有的思路走不通!

然后老师才开始了讲解什么是字典,
问题或者需求场景是关键的第一步!
孩子惊呼简直为问题量身定做啊?
No,不全是。解决很多类似场景
为什么学习字典?




  1. ([1, 3, 1, 5, 9, 0], 'left', 1)
复制代码
在家动手再敲一遍跑跑看




python 优雅并且很酷







▽ 推荐阅读▽


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:
帖子:
精华:
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP