欢迎光临散文网 会员登陆 & 注册

Python复合数据类型

2021-08-08 16:38 作者:皮卡丘上大学啦  | 我要投稿

 数值类型、布尔类型数据不可再分解为其他类型, 而列表、元组、字典和集合类型的数据包含多个 相互关联的数据元素,所以称它们为复合数据类 型。 

 字符串其实也是一种复合数据,其元素是单个字 符。

 列表、元组和字符串是有顺序的数据元素的集合 体,称为序列(sequence)。 

 序列具有顺序存取的特征,可以通过各数据元素 在序列中的位置编号(索引)来访问数据元素。 

 字典和集合属于无顺序的数据集合体,数据元素 没有特定的排列顺序,因此不能像序列那样通过 位置编号来访问数据元素。

1.列表 

 列表(list)是Python 中使用较多的复合数据类型, 可以完成大多数复合数据结构的操作。  列表是写在中括号之间、用逗号分隔的元素序列, 元素的类型可以不相同,可以是数字、单个字符、 字符串甚至可以包含列表(所谓嵌套)。

 例: 

 >>> m=['brenden',45.3,911,'john',32]  >>> print(m) #输出完整列表 

 ['brenden', 45.3, 911, 'john', 32] 

 >>> print(m[0]) #输出列表的第1 个元素 

 brenden

 与Python 字符串不同的是,列表中的元素是可以改变的。 

 例: 

 >>> a=[1,2,3,4,5,6] 

 >>> a[0]=9 

 >>> a 

 [9, 2, 3, 4, 5, 6]

2.元组 

 元组(tuple)是写在小括号之间、用逗号隔开的元素序列。 

 元组中的元素类型也可以不相同。 

 元组与列表类似,不同之处在于元组的元素不能修改,相当于只读列表。

 例: 

 >>> m=('brenden',45.3,911,'john',32) 

 >>> print(m) #输出完整元组 

 ('brenden', 45.3, 911, 'john', 32) 

 >>> print(m[0]) #输出元组的第1 个元素 

 brenden

 注意: 

 空的圆括号表示空元组。 

 当元组只有一个元素时,必须以逗号结尾。

 例: 

 >>> () #空元组 

 () 

 >>> (9,) #含有一个元素的元组 

 (9,)  >>> (9) #整数9 

 9

 任何一组以逗号分隔的对象,当省略标识序列的括号时,默认为元组。 

 例: 

 >>> 2,3,4 

 (2, 3, 4) 

 >>> s=2,3,4 

 >>> s 

 (2, 3, 4)

 元组与字符串类似,元素不能二次赋值。 

 可以把字符串看成一种特殊的元组。 

 以下给元组赋值是无效的,因为元组是不允许更新的,而列表允许更新。 

 >>> tup=(1,2,3,4,5,6) 

 >>> list=[1,2,3,4,5,6] 

 >>> tup[2]=1000 #在元组中是非法应用 

 >>> list[2]=1000 #在列表中是合法应用

 元组和列表的区别: 

 列表元素用中括号[]括起来,且元素的个数及元 素的值可以改变。 

 元组元素用小括号()括起来,且不可以更改。 

 元组可以看成只读的列表。

3.字典 

 字典(dictionary)是写在大括号之间、用逗号分隔的元素集合,其元素由关键字(key,也称为键) 和关键字对应的值(value)组成,通过关键字来 存取的字典中的元素。

 列表和元组是有序的对象结合,字典是无序的对象集合。 

 字典是一种映射类型(mapping type),它是一 个无序的“关键字:值”对集合。 

 关键字必须使用不可变类型,也就是说列表和包 含可变类型的元组不能做索引关键字。

 在同一个字典中,关键字还必须互不相同。

 例: 

 >>> dict={'name':'brenden','code':410012,'dept':'sales'}

   >>> print(dict) #输出完整的字典 

 {'name': 'brenden', 'dept': 'sales', 'code': 410012} 

 >>> print(dict['code']) #输出关键字为“code”的值 

 410012 

 >>> dict['payment']=4500 #在字典中添加一个“关键字:值”对 

 >>> print(dict) #输出完整的字典 

 {'name': 'brenden', 'dept': 'sales', 'code': 410012, 'payment':  4500}

4.集合 

 集合(set)是一个无序且包含不重复元素的数据 类型。 

 基本功能是进行成员关系测试和消除重复元素。 

 可以使用大括号或者set()函数创建集合类型。 

 注意:创建一个空集合必须用set()而不是{},因为 {}是用来创建一个空字典。

 例: 

 >>> student={'Tom','Jim','Mary','Tom','Jack','Rose'} 

 >>> print(student) #重复的元素被自动去掉 

 {'Jim', 'Tom', 'Jack', 'Rose', 'Mary'} 

 >>> s={} 

 >>> type(s) 

 <class 'dict'> 

 >>> s=set() 

 >>> type(s) 

 <class 'set'>

Python复合数据类型的评论 (共 条)

分享到微博请遵守国家法律