天天看点

CodeMonkey之Python关卡16~20详解(四)第 16 关第17关第18关第19关第20关

第 16 关
CodeMonkey之Python关卡16~20详解(四)第 16 关第17关第18关第19关第20关

第16关:这一关有很多种解题方法,只要保证最后一个鲸鱼的喷水高度是6就可以了。

答案:

whales[0].blow(6)
whales[4].blow(5)
whales[3].blow(4)
whales[2].blow(3)
whales[1].blow(2)
           

第17关

CodeMonkey之Python关卡16~20详解(四)第 16 关第17关第18关第19关第20关

第17关:这一关其实是在给循环做铺垫,虽然左上角写的Loops循环,但是程序代码中用的是 for 循环,学习者要注意与Coding Adventure(coffeescript语言)中的Loops循环区分。

(1)在for challenge中,程序将遍历列表,并对列表中的所有元素执行相同的操作。

(2)这里所指的列表中所有元素,就是图中的5头鲸鱼。鲸鱼是鲸鱼列表中每头鲸鱼的名字。

(3)第一次(第一次迭代)鲸鱼是鲸鱼[0]whales[0]。 for循环的每次迭代,鲸鱼都是列表中的下一个鲸鱼。所以第二次(第二次迭代)鲸鱼就是鲸鱼[1]whales[1]。

(4)为每条鲸鱼更改喷水方法的参数,为:鲸鱼whale 更改

答案:

for whale in whales:
    whale.blow(6)
           

第18关

CodeMonkey之Python关卡16~20详解(四)第 16 关第17关第18关第19关第20关

第18关:这一关与刚刚的17关一样,都是在练习使用for循环,for循环每遍历一次,就会对遍历的列表中的每个元素执行相同的操作。这一关只要把所有的长颈鹿的高度都降低到跟路面一样高就好了。

答案:

for giraffe in giraffes:
    giraffe.height = 5
           

第19关

CodeMonkey之Python关卡16~20详解(四)第 16 关第17关第18关第19关第20关

第19关:

这一关依旧是对for循环的应用。我们需要再放置3条蛇帮助铺路。然后利用for循环,依次对每条蛇的长度进行更改。

答案:

for snake in snakes:
    snake.length = 4
           

第20关

CodeMonkey之Python关卡16~20详解(四)第 16 关第17关第18关第19关第20关

第20关:

这一关是对for循环的一个进阶练习。需要学习者独立完成所有代码:

变编写代码的过程中,要注意以下几点:

(1)for challenge 语句,最后末尾有一个冒号,不要丢,更不要打成中文的冒号,Python语言严格区分中英文和大小写。

(2)在写for语句时,例如鲸鱼 whale 不要写成 whales,whales代表鲸鱼这个数组。whale可以简写成一个 w ,即 :

for whale in whales:
    whale.blow(5)
           

等同于:

for w in whales:
    w.blow(5)
           

此处的 w 和 whale 只是代表whales数组中的元素,用任何变量代表都可以。