Python 基础之集合及基本数据类型总结
Posted alinuxer
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 基础之集合及基本数据类型总结相关的知识,希望对你有一定的参考价值。
1. 前面知识回顾
1.1 根据不同条件为数据类型分类
1.1.1 可变不可变
① 可变:列表、字典
② 不可变:字符串、数字、元组
1.1.2 访问顺序
① 直接访问:数字
② 顺序访问:字符串、列表、元组
③ 映射:字典
1.1.3 存放元素个数
容器类型:列表、元组、字典
原子:数字、字符串
2. 集合(set)
2.1 集合介绍
2.1.1 作用
去重,关系运算。
2.1.2 定义
由不同元素组成,集合是一组无序排列的可 hash 值,可以作为字典的 key。
集合的目的是将不同的值存放到一起,不同的集合之间用来做关系运算,无需纠结于集合中的单个值。
集合中的元素必须是不可变类型(数字、字符串、元组),可变类型是不可 hash 类型,不可变类型是可 hash 类型。
2.1.3 创建集合
① 可以包含多个元素,用逗号分割:
s = {3,5,6,4,7} v = type(s) print(s) print(v) D:pycharmfilesfirstvenvScriptspython.exe D:/pycharmfiles/first/day2/buer.py {3, 4, 5, 6, 7} # 可以看到集合中的元素和上面定义的不同(集合是无序的)。 <class ‘set‘>
② 创建一个集合,重复元素只保留一个(去重):
s = {1,2,3,3,3,3,3} print(s) D:pycharmfilesfirstvenvScriptspython.exe D:/pycharmfiles/first/day2/buer.py {1, 2, 3} # 此处可以看到输出的集合被去重了。
③ 通过自带 set() 函数创建一个集合:
s = set("alinuxer") print(s) D:pycharmfilesfirstvenvScriptspython.exe D:/pycharmfiles/first/day2/buer.py {‘i‘, ‘e‘, ‘l‘, ‘a‘, ‘u‘, ‘n‘, ‘r‘, ‘x‘} # set() 函数会自动将字符串中的每个字符转换为集合中的元素。
④ 通过 set() 函数将列表转换为集合:
li = ["alex","alex","alinuxer","bryant"] s = set(li) print(s) D:pycharmfilesfirstvenvScriptspython.exe D:/pycharmfiles/first/day2/buer.py {‘alex‘, ‘alinuxer‘, ‘bryant‘} # 去重,无序。
2.1.4 集合的元素遵循三个原则
① 每个元素必须是不可变类型 (可 hash,可作为字典的 key);
② 没有重复的元素(自动去重);
③ 无序。
2.2 集合的常用操作
① add 在集合中添加元素:
s = {1,2,3,4,5,6} s.add("alinuxer") print(s) D:pycharmfilesfirstvenvScriptspython.exe D:/pycharmfiles/first/day2/buer.py {1, 2, 3, 4, 5, 6, ‘alinuxer‘}
② clear 清空集合中的所有元素:
s = {1,2,3,4,5,6} s.clear() print(s) D:pycharmfilesfirstvenvScriptspython.exe D:/pycharmfiles/first/day2/buer.py set()
③ pop 随机删除集合中的元素:
s = {"1",8,4,"alinuxer",3,5} s1 = s.pop() print(s) print(s1) D:pycharmfilesfirstvenvScriptspython.exe D:/pycharmfiles/first/day2/buer.py {4, 5, 8, ‘alinuxer‘, ‘1‘} 3
④ remove 指定删除集合中的元素:
s = {"1",8,4,"alinuxer",3,5} s.remove("1") print(s) D:pycharmfilesfirstvenvScriptspython.exe D:/pycharmfiles/first/day2/buer.py {3, 4, 5, 8, ‘alinuxer‘} # 提示:指定删除集合中不存在的元素删除就会报错。
⑤ discard 指定集合中的元素删除:【此方法指定不存在的元素删除不会报错】
s = {"1",8,4,"alinuxer",3,5} s.discard("1") print(s) D:pycharmfilesfirstvenvScriptspython.exe D:/pycharmfiles/first/day2/buer.py {3, 4, 5, 8, ‘alinuxer‘}
s = {"1",8,4,"alinuxer",3,5} s.discard("12345") # discard 指定不存在的元素删除不会报错。 print(s) D:pycharmfilesfirstvenvScriptspython.exe D:/pycharmfiles/first/day2/buer.py {3, 4, 5, 8, ‘1‘, ‘alinuxer‘}
------未完待续------
以上是关于Python 基础之集合及基本数据类型总结的主要内容,如果未能解决你的问题,请参考以下文章