在第三章中我们学习了如何创建简单的列表,本章内容主要是对列表进行具体操作。
4.1 遍历整个列表(for循环语句)
举例说明,输入输出如下:
(其中magician来的比较突兀,这里可以认定为声明了一个和magician列表中元素类型相同的变量,其变量名称为magician,用来存储从列表中读取的数据)
4.1.1 深入的研究循环
如何解读上面的代码:
for magician in magicians:
这行代码让Python获取列表magicians的第一个值,并将其存储到变量magician中。接下来Python读取下面的代码:
print(magician)
而后,Python返回循环的第一行,并打印出来。
编写for循环时,对于用于存储列表每个值得临时变量,可指定任何名称。但是建议使用有意义的名称,如
for cat in cats
for dog in dogs
for item in list_of_intem
4.1.2 在for循环中做更多的工作
在for循环中可以对元素进行任何操作。按照操作,输入输出如下:
注意for循环语句的空格。(Python语句中没有包含{},for语句等只有依靠良好的空格习惯才能完成各语句的作用,减少出错,一定要注意。)
4.1.3 在for循环结束后执行一些操作
在for循环的后面么有缩进的代码只执行一次,而不会重复。
使用for循环处理数据是一种对数据集执行整体操作的不错方式。
4.2 避免缩进错误
4.2.1 忘记缩进
4.2.2 忘记缩进额外的代码行
虽然整体符合语法,但是不符合自己的预期。
4.2.3 不必要的缩进
4.2.4 循环后不必要的缩进
语法没有错误,属于逻辑错误。
4.2.5 遗漏冒号
循环语句后面没有冒号,会提示语法错误。
4.3 创建数字列表
列表非常实用存储数字集合。而Python提供了很多工具,高效帮你处理数字列表。
实用函数range()
在这个示例中,range()只打印了数字1-4,这是你在编程语言中看到经常差一行的行为。
函数range()让Python从你指定的第一个值开始数,并在达到你指定的第二个值后停止,因此输出不包含第二个值。
使用range()时,如果输出不符合预期,请尝试将指定的值加减1,。
4.3.2 使用range()创建数字列表
要创建数字列表,可以使用函数list()将range()的结果直接转换成列表。如果将range()作为list()的参数,输出将为一个数字列表。
使用range()函数,还能指定步长。
range()函数从2开始,不断的+2,知道达到或者超过终止11.
4.3.4 列表解析
squares.py
squares =[value**2 for value in range(1,11)]
print(squares)
首先指定一个描述性的列表名,然后指定一个左方括号,并定义一个表达式,用于生成你要存储到列表的值。
4.4 使用列表的一部分
处理列表的部分元素---Python称之为切片。
4.4.1 切片
要创建切片,可指定要使用的第一个元素的索引到最后一个元素的索引+1.与Range函数使用方法一致。
4.4.2 遍历切片
4.4.3 复制列表
复制整个列表,使用[:]
以上程序为合适有两个列表,另程序是按照从上到下,从左到右的顺序执行。
如果将代码改成friend_foods = my_foods就不是将my_foods副本复制给friend_food,而是将自己同friend_foods等同,指向一个位置。
4.5 元组
列表适用于存储程序运行期间可能变化的数据集,列表可以修改。而有些数据不需要修改。Python将不能修改的值称为不可变的,而不可变的列表被称为元组。
4.5.1 定义元组
元组使用圆括号进行表示,定义元组后,可以使用索引来访问元素。
元组内的元素不能随意更改,整个元素可以进行重新赋值。
4.6 设置代码格式
4.6.1 格式设置指南 易于编写,易于阅读之间选择易于阅读
4.6.2 每级缩进4个字符。一个tab
4.6.3 行长 一行最多不超过80个字符