用来练手的python练习题,原题链接: python练习实例32
题干: 按相反的顺序输出列表的值
拿到题目首先写下如下代码:
a = [1,2,3,4]
for i in range(len(a)):print(a[len(a)-i-1])
输出结果如下:
使用一个简单的循环就可以完成这个操作。但其实python有利用中括号操作的更显然的方法。
我们都知道可以使用中括号调用列表中的某一个值,如下所示:
实际上远不止如此:
当我们使用冒号代替索引时,会输出整个列表。
同样的,用冒号也可以实现读取列表中的一系列值。
使用两个冒号和三个参数a[start,stop,step] 可以读取从start索引到stop索引,每次间隔step的值
其中step可以是负数,就有了我们下面的例子:
当step是负数时我们就可以倒序输出列表了。
不止如此,当前两个参数start stop为空时,我们可以输出整个列表。
因此原题的另外一个解法如下:
tips :
当我们在中括号中只有一个冒号时,还有以下操作:
选择列表除了最后两项的部分:
选择列表的前两项:
选择列表的0-3项: