
上QQ阅读APP看书,第一时间看更新
练习1:访问列表成员
在下面的练习中,我们将首先创建一个列表,然后观察访问元素的不同方法。
1.使用以下命令定义一个名为list_1的列表,其中包含四个整数成员:

索引将被自动分配,如图1-3所示。

图1-3 显示前向和后向索引的列表
2.使用前向索引访问list_1中的第一个元素:

3.使用前向索引访问list_1中的最后一个元素:

4.使用len函数访问list_1中的最后一个元素:

Python中的len函数返回指定列表的长度。
5.使用后向索引访问list_1中的最后一个元素:

6.使用前向索引访问list_1中的前三个元素:

这又被称作列表切片,因为它通过只提取原始列表的一部分来返回更小的列表。要切割一个列表,我们需要两个整数。第一个整数表示切片的开始,第二个整数表示倒数第二个元素。
说明
需要注意的是,切片不包括第三个索引或末尾元素。这就是列表切片的工作原理。
7.通过切片访问list_1中的最后两个元素:

8.使用后向索引访问前两个元素:

当冒号(:)的一侧为空时,基本上是在告诉Python要么一直到列表的末尾,要么从列表的开头开始。它会自动应用我们刚刚学过的列表切片规则。
9.反转字符串中的元素:

说明
最后一段代码的可读性不是很好,这意味着仅仅通过查看它并不能明显地知道它在做什么。这违背了Python的基本思想。因此,尽管这种代码看起来很聪明,但是我们应该抵制编写这种代码的冲动。