Python基础之数据结构详解
目录
- 一、列表
- 1.1 列表更新元素
- 1.2 列表增加元素
- 1.3 列表删除元素
- 1.4 列表的其他操作
- 二、元组
- 2.1 删除元组
- 2.2 元组的其他操作
- 三、字典
- 3.1 字典删除元素
- 3.2 字典的其他操作
- 四、集合
- 4.1 集合添加元素
- 4.2 集合删除元素
- 五、其他操作
一、列表
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来
示例: list01 = ['a','b','c']
1.1 列表更新元素
一个列表是可以储存不同的类型的数据结构,并且修改的新元素也不一定需要和原来的元素类型一致,但是要注意的是,更新列表的索引必须是已存在的索引,不能对超出列表的索引更新元素
1.2 列表增加元素
增加元素的方法:
1.append方法:在列表的最后增加一个元素。
list01 = ['a', 'b', 'c'] list01 .append('d') print(list01) list01 .append(['e', 'f']) print(list01) 执行结果: ['a', 'b', 'c', 'd'] ['a', 'b', 'c', 'd', ['e', 'f']]
2.extend方法:在列表的最后增加多个元素。
list01 = ['a', 'b', 'c'] list01 .extend(['d', 'e', 'f']) print(list01) 执行结果: ['a', 'b', 'c', 'd', 'e', 'f']
3.insert方法:在列表的中间插入一个元素。
list01 = ['a', 'b', 'c'] list01 .insert(1,'d') print(list01) 执行结果: ['a', 'd', 'b', 'c']
1.3 列表删除元素
删除元素的方法:
1.pop方法:pop(index)可以删除指定位置的元素,并且把这个元素作为返回值返回,如果不指定位置则默认选择最后一个元素。
list01 = ['a', 'b', 'c'] list01 .pop() print(list01) list01 .pop(0) print(list01) 执行结果: ['a', 'b'] ['b']
2.remove方法:可以根据元素内容对元素进行删除。
list01 = ['a', 'b', 'c'] list01.remove('a') print(list01) 执行结果: ['b', 'c']
3.del方法:还可以使用关键字“del”根据索引删除列表的元素。
list01 = ['a', 'b', 'c'] print(list01) del list01 [0] print(list01) 执行结果: ['a', 'b', 'c'] ['b', 'c']
1.4 列表的其他操作
1.index方法:查找元素在列表中的索引位置。
list01 = ['a', 'b', 'c'] print(list01 .index('a')) print(list01 .index('b')) 执行结果: 0 1
2.reverse方法:反转队列,反转原来的队列,并且没有返回值。
list01 = ['a', 'b', 'c'] list01 .reverse() print(list01) 执行结果: ['c', 'b', 'a']
3.count方法:统计某个元素在列表中的次数。
list01 = ['a', 'b', 'c','b', 'c'] print(list01 .count('a')) print(list01 .count('b')) 执行结果: 1 2
4.sort方法:队列表进行排序,还可以自定义排序方式。
list02 = [1,88,66,22] list02.sort() print(list02) 执行结果: [1, 22, 66, 88]
二、元组
创建一个元组,只要把逗号分隔的不同的数据项使用小括号括起来
如果元组中只有一个元素,还需要元素后加上“,”,才能定义一个元组
tuple01 = ('a','b','c')
2.1 删除元组
由于元组是不能修改的,所以元组也不能单独删除,只能删除整个元组
1.del方法:删除整个元组
tuple01 = ('a','b','c') del tuple01 print(tuple01) 执行结果: 发生异常: NameError name 'tuple01' is not defined 发生异常是正确的,说明tuple01 已经被删除了
2.2 元组的其他操作
1.count方法:用于统计元素在元组中出现的次数
tuple02 = ('a', 'b', 'c','b', 'c') print(tuple02.count('a')) print(tuple02.count('b')) 执行结果: 1 2
2.index方法:用于查找元素在元组中的索引位置
tuple02 = ('a', 'b', 'c','b', 'c') print(tuple02.index('a')) print(tuple02.index('b')) 执行结果: 0 1
3.len方法:计算元组元素个数
tuple02 = ('a', 'b', 'c','b', 'c') print(len(tuple02)) 执行结果: 5
4.max,min方法返回元组中最大,最小的值
tuple02 = (1, 88, 66, 22) print(max(tuple02)) print(min(tuple02)) 执行结果: 88 1
三、字典
字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中。
dict01 = {'a':'深圳','b':22,'c':22.22}
3.1 字典删除元素
1.del方法:使用关键字“del”根据键删除列表的元素
dict01 = {'a':'深圳','b':22,'c':22.22} print(dict01) del dict01['a'] print(dict01) 执行结果: {'a': '深圳', 'b': 22, 'c': 22.22} {'b': 22, 'c': 22.22}
3.2 字典的其他操作
1.clear方法:用于清空字典里的所有元素,使字典变为空字典。
dict01 = {'a':'深圳','b':22,'c':22.22} print(dict01) dict01.clear() print(dict01) 执行结果: {'a': '深圳', 'b': 22, 'c': 22.22} {}
2.copy方法:返回一个具有相同键值对的新字典。
dict01 = {'a':'深圳','b':22,'c':22.22} print(dict01) dict01.copy() print(dict01) 执行结果: {'a': '深圳', 'b': 22, 'c': 22.22} {'a': '深圳', 'b': 22, 'c': 22.22}
3.fromkeys方法:用于创建一个新字典,用序列中的元素作为字典的键,第二个参数为字典所有参数对应的初始值。
tuple01 = ("name","age","city") hunan1 = dict.fromkeys(tuple01) human2 = dict.fromkeys(tuple01,20) print(hunan1) print(human2) 执行结果: {'name': None, 'age': None, 'city': None} {'name': 20, 'age': 20, 'city': 20}
4.get方法:返回键对应的值,如果字典不存在对应的键则返回none
dict01 = {'a': '深圳', 'b': 22, 'c': 22.22} print(dict01.get('a')) print(dict01.get('d')) 执行结果: 深圳 None
5.keys方法:返回一个列表,里面包含了字典里的所有键
dict01 = {'a': '深圳', 'b': 22, 'c': 22.22} print(dict01.keys()) 执行结果: dict_keys(['a', 'b', 'c'])
6.valuse方法:返回一个列表,里面包含了字典的所有值
dict01 = {'a': '深圳', 'b': 22, 'c': 22.22} print(dict01.values()) 执行结果: dict_values(['深圳', 22, 22.22])
7.items方法:返回一个列表,里面包含了所有键值对的列表
dict01 = {'a': '深圳', 'b': 22, 'c': 22.22} print(dict01.items()) 执行结果: dict_items([('a', '深圳'), ('b', 22), ('c', 22.22)])
还可以使用items方法来遍历字典
dict01 = {'a': '深圳', 'b': 22, 'c': 22.22} for k, v in dict01.items(): print(k,v) 执行结果: a 深圳 b 22 c 22.22
四、集合
集合(set)是一个无序的不重复元素序列。可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
set01 = {1, 2, 2, 2, 2, 3, } print(set01) set02 = {1, 2, 3, } print(set02) 执行结果: {1, 2, 3} {1, 2, 3}
4.1 集合添加元素
1.add方法:为集合添加一个元素
set01 = {1, 2, 3} set01.add(4) set01.add(3) print(set01) 执行结果: {1, 2, 3, 4}
4.2 集合删除元素
1.remove方法:为集合删除一个元素
set01 = {1, 2, 3} set01.remove(1) print(set01) 执行结果: {2, 3}
五、其他操作
1.clear() 移除集合中的所有元素 2.copy() 拷贝一个集合 3.difference() 返回多个集合的差集 4.difference_update() 移除集合中的元素,该元素在指定的集合也存在。 5.discard() 删除集合中指定的元素 6.intersection() 返回集合的交集 7.intersection_update() 返回集合的交集。 8.isdisjoint() 判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。 9.issubset() 判断指定集合是否为该方法参数集合的子集。 10.issuperset() 判断该方法的参数集合是否为指定集合的子集 11.pop() 随机移除元素 12.symmetric_difference() 返回两个集合中不重复的元素集合。 13.symmetric_difference_update() 移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集 14.合中不同的元素插入到当前集合中。 15.union() 返回两个集合的并集 16.update() 给集合添加元素
到此这篇关于Python基础之数据结构详解的文章就介绍到这了,更多相关python数据结构详解内容请搜索hwidc以前的文章或继续浏览下面的相关文章希望大家以后多多支持hwidc!
【本文来源:湖北seo 欢迎转载】