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 基础之集合及基本数据类型总结的主要内容,如果未能解决你的问题,请参考以下文章

Python之路第四篇python基础 之基本数据类型之集合

python基础学习二 数据结构之list及相关基本操作

基础篇之集合总结

python基础语法---数据类型之集合类型

Python基础之(基本数据类型及运算)

Python学习:基本数据类型与变量(中)与基础之条件及循环(上)