六、数据集合的应用
6.1 list
第3行,定义了”listWord“并且初始化了三个列表元素。
第4〜5行,使用”for…in“循环打印了列表内容。
第7〜10行,使用”while“循环打印了列表内容。
列表的创建示例代码:
# -*- coding: utf-8 -*- # 创建空列表 # 创建拥有同种类型的数据列表 # 创建拥有不同类型的数据列表 # 利用现有的变量创建列表 |
列表元素增加示例代码:
# -*- coding: utf-8 -*- # 创建空列表 # 将数字1加入列表 # 将字符a加入列表 # 将变量b中存储的数据加入列表 |
获取列表元素示例代码:
# -*- coding: utf-8 -*- # 创建列表 # 从列表中取出字符aa,索引操作 # 从列表中取出字符bb,索引操作 # 从列表中取出字符ee,索引操作 # 从列表中取出字符dd,索引操作 # 从列表中取出字符bb, cc, dd,并构成子列表,分片操作 |
打印结果如下:
修改列表元素示例代码:
# -*- coding: utf-8 -*- # 创建列表 # 将字符aa修改为0 # 删除列表中的字符ee # 删除列表中的字符cc, dd |
打印结果如下:
创建数字列表的简便方法,示例代码如下:
# -*- coding: utf-8 -*- # 创建一个列表,其中包含0-10的数字 |
打印结果如下:
6.2 tuple
第3行,定义了”tupleWord“并且初始化了三个元组元素。
第4〜5行,使用”for…in“循环打印了元组内容。
第7〜10行,使用”while“循环打印了元组内容。
第3行,定义了”tupleWord“并且初始化了四个元组元素,其中,第四个元素内容为list列表。
第4〜5行,使用”for…in“循环打印了元组内容。
第7〜10行,使用”while“循环打印了元组内容。
第12行,用数组形式,打印元组中的列表元素。
第3行,定义了”tupleWord“并且初始化了四个元组元素,其中,第四个元素内容为list列表。
第4〜5行,修改了元组中列表的内容内容。
第6行,用数组形式,打印元组中的列表元素。
那么问题就来了,上节课我们提到tuple的特性,tuple是Python中别一种有序但不可变的数据集合,我们称之为元组。它与list类似,唯一不同的是,tuple一旦创建就不能修改。为什么我们修改了它,却可用呢?我们来看一个它的存储结构。
从表面上看,tuple的元素改变了,实质tuple本身并没有改变,改变的是它所指向的list,所以对于tuple而言,所谓的不变,并不是每个元素都不变,而是说它所指向的内容不变,上图对tuple进行了很好的诠释,红色部分是不变的部分,而绿色是可变的部分。
创建tuple的示例代码如下:
# -*- coding: utf-8 -*- # 创建空元组 # 创建元组,有字符a, b, c, d |
6.3 dict
第5行,定义了字典。
第7〜8行,通过枚举key值,循环打印了所有元素,这里要注意”+“号具有连接字符的作用。
第10〜11行,通过枚举元素数量,循环打印了所有元素。
第13〜14行,通过迭代元素(迭代会在后面的章节讲解),循环打印了所有元素。
通过代码,我们可以看出,对于字典的遍历有三种方法,分别是:”for … in“、”items“和”iteritems“。
dict的基本应用示例如下:
# -*- coding: utf-8 -*- # 创建字典 # 添加 # 删除 # 修改 # 清除所有数据 |
6.4 set
第5〜6行,初始化了set。
第10行,添加一个元素”!”。
第12行,同时添加了两个元素,分别为”p”与”y”。
第13行,同时添加了多个元素,分别为”t”、”h”、”o”和”n”。
第15行,删除了元素”w”。
第18行,x和y的并集。
第19行,x和y的交集。
第20行,x和y的差集,在x中,但不在y中。
第21行,x和y的对称差集,在x或y中,但不会同时出现在两都中。
6.5 for…in循环的应用
请通过如下代码,深入理解for…in的应用。
# -*- coding: utf-8 -*- # 打印1-5的数值,方法一。 # 打印字符内容,并计算其长度,写法一。 # 打印字符内容,并计算其长度,写法二。 names = (‘Tom’, ‘Jack’, ‘Rose’) |