第21关
这一关依旧是对for循环的练习。
我们需要先将长颈鹿的高度降下来,才能够让蛇的长度伸长。小车才能顺利通过。
答案:
for giraffe in giraffes:
#更改每只长颈鹿的高度
giraffe.height = 2
for snake in snakes:
#更改每条蛇的长度
snake.length = 5
第22关
这一关开始介入列表索引的概念。
首先,
for index in range(3):
print(index)
这是一个for循环,range(x)的含义即[0,1,2…,x-1]
上面循环的输出结果是:[0,1,2]
如果是range[x]呢?即是从0开始,一直到x-1,for循环在迭代这个列表的时候,会依次取出1,,再取2,再取3…最后一个取x-1。
在此关卡中,长颈鹿和蛇又分别组成了两个列表。所以长颈鹿列表中,第一个长颈鹿就可以表示为:giraffes[0]。第二个长颈鹿就可以表示为:giraffes[1]。即 列表名[元素的索引下标]。列表中,元素的索引下标从0开始数。
答案:
for index in range(3):
print(index)
giraffes[index].height = 3
snakes[index].length = 5
这个执行过程是:第一个长颈鹿高度调整为3,第一条蛇长度调整为5,让后继续调整第二只长颈鹿,第二条蛇。。。以此类推。
第23关
这一关的最终目的,是让蛇伸长脖子,长颈鹿全部高度一致。在这个过程中,其实就是对他们的代表 giraffes[index].height 、 snakes[index].length 进行重新赋值。无非就是改变 index 的值:0、1、2、3
range 对象是一个迭代器对象,用来产生指定范围的数字序列。格式为:
range(start, end [,step])
生成的数值序列从start 开始,到 end结束(不包含 end)。
若没有填写start,则默认从 0 开始。step是可选的步长,默认为 1。如下是几种典型示例:
for i in range(10)
输出结果:0 1 2 3 4 5 6 7 8 9
for i in range(3,10)
输出结果:3 4 5 6 7 8 9
for i in range(3,10,2)
输出结果:3 5 7 9
答案:
此题,需要的是0,1,2,3
即需要range(4)
即可。
第24关
这一关出现了两个运行按钮,不要慌。其实也是很简单。
先看上面部分:
这第一只长颈鹿的高度giraffes[0].height
和第一条蛇的长度snakes[0].length
是标准的。那么我们只需要让后面所有的长颈鹿的高度、蛇的长度都跟他们俩一样就行了。
但是,先不要着急,先看程序给我的前两行代码:
goal_length = snakes[0].length
goal_height = giraffes[0].height
goal 英语单词的意思是 目标 。那这两行的代码的含义就很好猜了。。目标长度、目标高度。程序将第一条蛇的长度、第一只长颈鹿的高度赋值给了他们。那么再来看下面的部分:
通过观察我们也能发现,正好前两条代码也适用。
那问题就很好解决了。我们只需要让所有蛇的长度都等于第一条蛇的长度,让所有的长颈鹿的高度都等于第一只长颈鹿的高度,就OK了。。
这有一点需要注意的是,不能再写数字了,因为这个一段程序要适用于两个场景,那么就一定会用到变量了。
ps:
len( ) 函数,用于返回列表中的对象数量。
a = [1,2,3,4,5,6]
print(len(a))
结果是 6.
答案:
goal_length = snakes[0].length
goal_height = giraffes[0].height
for index in range(len(snakes)):
snakes[index].length = goal_length
giraffes[index].height = goal_height
第25关
这一关重点考察range( )函数。
还是三个参数:
range(start, end [,step])
并不是所有的鲸鱼都需要喷水,只需要第3~6。所以取 rang(2,6)
第一只鲸鱼喷水的指令:whales[0].blow(5)
那以此类推,第3到第6就把0分别换成 2,3,4,5
所以这里只需要在最后添加一行鲸鱼喷水的指令就可以了。注意代码缩进。
答案:
print("range(2,6) creates the following:")
print(range(2,6))
for index in range(2,6):
print(index)
whales[index].blow(5)
"index是索引"
本文版权所有,引用请注明出处,商用必究!
来源:CSDN
作者:一个小小的编程教研
链接:https://blog.csdn.net/weixin_43137567/article/details/103865669