05-Python基础教程-数据集合

五、数据集合

在Python中,数据集合有:”list“、”tuple“、”dict“与”set“四种,下面分别对四种数据集合的应用进行讲解。

5.1 list

list是Python中一种有序的可变的数据集合,我们称之为列表,我们可以随时添加、删除和修改其中的元素。

通过第3行代码可以看出,定义list方法是用一个”[]“将元素包含起来,元素间用”,“号分隔。list中的元素的数据类型可以不同,除了整数、浮点数、布尔值、字符串等,也可以是list或其它数据集合。

通过第5行代码可以看出,print方法,除了正常输出外,还具有格式化输出功能,其中的”%d“代码输出的内容为整型(”%s“为字符串,”%f“为浮点型),而len()函数可以获得list元素的个数。

通过第6行代码可以看出,可以通过”list名称[索引编号]“的形式获得到指定编号的值,同时需要注意,索引编号是从0开始的。

通过第3行代码可以看出,原始定义的list内容为:

‘one’, ‘two’, ‘three’, 1, 1.2, 3, True, False

通过第4行代码”liName.pop(6)“可以看出,删除了索引编号为6的元素,得到的结果如下:

‘one’, ‘two’, ‘three’, 1, 1.2, 3, False

通过第5行代码”liName.pop()“可以看出,删除了最后一项元素,得到的结果如下:

‘one’, ‘two’, ‘three’, 1, 1.2, 3

通过第6行代码”liName.append(4)“可以看出,在list中,追加了一个数值4,得到的结果如下:

‘one’, ‘two’, ‘three’, 1, 1.2, 3, 4

通过第7行代码”liName[4] = 2“可以看出,修改了索引编号为4的元素内容,得到的结果如下:

‘one’, ‘two’, ‘three’, 1, 2, 3, 4

通过第8行代码”liName.insert(3, ‘four’)“可以看出,在索引编号为3处插入元素”four”,得到的结果如下:

‘one’, ‘two’, ‘three’, ‘four’, 1, 2, 3, 4

通过上面的示例,可以得知,list的常用操作有:

  1. 追加元素 append();
  2. 插入元素 insert();
  3. 删除元素 pop();
  4. 修改元素 list名称[索引编号] = 修改的值。

5.2 tuple

tuple是Python中别一种有序但不可变的数据集合,我们称之为元组。它与list类似,唯一不同的是,tuple一旦创建就不能修改。其表示方法是用一对”()“将元素包含,用”,“分隔。

第3行”a = ()“定义了一个空的元组。

第4行”b = (1)“实质并非元组,而是将数值1赋给了变量b,它等价于”b = 1“。

第5行”c = (1, )“定义了只有一个的元组,其值为”1“,为了避免歧义,Python规定,在定义1个元素的元组时,元素后面必须加一个逗号。

第6行”d = (1, 2)“定义了具有两个元素的元组,分别为”1“和”2“。

第7行”print a, b, c, d“打印了定义的元组变量bprint功能强大吧,可以直接打印元组。

5.3 dict

dict是Python内置的字典,全称为dictionary,它是一种以”key-value“形式存储的数据集合。dict中的中的”key“是唯一的,且不可变的对象。

第34行,定义了字典,并对其进行了输出操作。

第5〜6行,除了key值为“score”的元素,并行了打印操作。

第7〜8行,修改了key值为“age”的元素内容。

需要大家注意的是,字典内部放的顺序与放入的顺序是完全没有关系的,Python中,dict是根据”key”值有序存放的,它的目的是加快查找速度。相对list而言,dict查找和插入速度极快,不会因为key的增长而影响其速度。

5.4 set

set是一个有序且不重复的数据集合。Set中的元素都必须是不可变对象。与dict相比,它是一组key的集合,但不会存储value的内容。在set中,没有重复的key,所以要创建一个set,就需要一个list作为输入的集合。

第34行,定义了set,并对其进行了输出操作,需要注意的是set的元素是不会出现重复的,所以在打印时,只看到了一个元素。

第5〜6行,添加了一个元素,并行了打印操作。

第7〜8行,除了一个元素,并行了打印操作。

由于set是无序、且无重复元素的集合,从数学角度来看,集合是可以进行交集、并集等集合运算的,接下来看一个例子。

6行的”&“,可以实现两个set的交集。

第7行的”|“,可以得到两个set的并集。

转载请附上原文出处链接及本声明
李老师的博客 » 05-Python基础教程-数据集合

发表评论

提供最优质的文章集合

立即查看 了解详情