IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python_集合 -> 正文阅读

[Python知识库]python_集合

**

SET

**
介绍

集合是无序和无索引且不重复的元素集合。在 Python 中,集合用花括号编写。

set 集合最常用的操作是向集合中添加、删除元素,以及集合之间做交集、并集、差集等运算等。

集合中只能存储不可变数据类型:包括整形、浮点型、字符串、元组,否则解释器会抛出TypeError;

创建集合

Python 提供了2种创建 set 集合的方法,分别是使用{}创建和使用set()函数将列表、元组等类型数据转换
为集合。
  1. 使用 {} 创建
	创建 set 集合可以像列表、元素和字典一样,直接将集合赋值给变量,从而实现创建集合的目的
	
a = {1,'c',1,(1,2,3),'c'}
print(a)
print(type(a))

2)set()函数创建集合

	set() 函数为Python内置函数,能将字符串、列表、元组、range 对象等可迭代对象转换成集合
set1 = set("c.biancheng.net")
set2 = set([1,2,3,4,5])
set3 = set((1,2,3,4,5))
print("set1:",set1)
print("set2:",set2)
print("set3:",set3)

如果要创建空集合,只能使用set()函数实现。因为直接使用一对{},Python解释器会将其视为一个空字典

访问集合元素

	集合中的元素是无序的,因此无法向列表那样使用下标访问元素。
	Python 中,访问集合元素最常用的方法是使用循环结构,将集合中的数据逐一读取出来。

a = {1,'c',1,(1,2,3),'c'}
for ele in a:
    print(ele,end=' ') # 1 c (1, 2, 3)

集合添加元素

	set 集合中添加元素,可以使用 set 类型提供的 add() 方法实现
a = {1,2,3}
a.add((1,2))
print(a)  # {(1, 2), 1, 2, 3}
a.add([1,2])
print(a) #TypeError: unhashable type: 'list'

集合中删除元素


	
a = {1,2,3}
a.pop()   #pop()从集合中删除一个元素。


a = {1,2,3}
a.remove(1) #使用 remove() 方法删除指定元素
print(a)
a.remove(1)
print(a) # 如果被删除元素本就不包含在集合中,则此方法会抛出 KeyError 错误

 
a = {1,2,3}
a.remove(1)
print(a) #{2, 3}
a.discard(1)
print(a)  #{2, 3} #discard() 方法,当删除集合中元素失败时,此方法不会抛出任何错误。

删除set集合

	和其他序列类型一样,手动函数集合类型,也可以使用 del() 语句

a = {1,'c',1,(1,2,3),'c'}
print(a)
del(a)
print(a) #NameError: name 'a' is not defined

合并集合

 使用 union() 方法返回包含两个集合中所有项目的新集合

set1 = {"a", "b" , "c"}
set2 = {1, 2, 3}
set3 = set1.union(set2)
print(set3)

 使用 update() 方法将一个集合中的所有项目插入另一个集合中
set1 = {"a", "b" , "c"}
set2 = {1, 2, 3}
set1.update(set2)
print(set1)

交集、并集、差集运算

集合示意图
图 1 中,有 2 个集合,分别为 set1={1,2,3} 和 set2={3,4,5},它们既有相同的元素,也有不同的元素。以这两个集合为例,分别做不同运算的结果如表 1 所示。

set1 = {1,2,3}
set2 = {3,4,5}
	# 交集 &
print(set1 & set2)   # {3};取两集合公共元素(都存在的元素)
	# 并集 |
print(set1 | set2)  #{1,2,3,4,5}; 取两个集合全部元素
	# 差集 -
print(set1 - set2) #{1,2}; 取一个集合中另一个集合没有的元素
print(set2 - set1) #{4,5}; 取一个集合中另一个集合没有的元素
	# 对称差集
print(set1 ^ set2)#{1,2,4,5}; 取集合a和b中不属于a和b公共的元素

集合方法函数

	set 类型提供的方法。首先,通过 dir(set) 命令可以查看它有哪些方法;
	
set1.add(): 向集合中添加数字、字符串、元组或者布尔类型数据
set1.clear():清空 set1 集合中所有元素
set2 = set1.copy():拷贝 set1 集合给 set2
set3 = set1.difference(set2):将 set1 中有而 set2 没有的元素给 set3
set1.difference_update(set2):	从 set1 中删除与 set2 相同的元素
set1.discard(elem):删除 set1 中的 elem 元素
set3 = set1.intersection(set2):取 set1 和 set2 的交集给 set3
set1.intersection_update(set2):取 set1和 set2 的交集,并更新给 set1
set1.isdisjoint(set2):判断 set1 和 set2 是否没有交集,有交集返回 False;没有交集返回 True
set1.issubset(set2):判断 set1 是否是 set2 的子集
set1.issuperset(set2):判断 set2 是否是 set1 的子集
a = set1.pop():取 set1 中一个元素,并赋值给 a
set1.remove(elem):移除 set1 中的 elem 元素
set3 = set1.symmetric_difference(set2):取 set1 和 set2 中互不相同的元素,给 set3
set1.symmetric_difference_update(set2):取 set1 和 set2 中互不相同的元素,并更新给 set1
set3 = set1.union(set2):	取 set1 和 set2 的并集,赋给 set3



  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-11-09 19:26:19  更:2021-11-09 19:28:37 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/30 4:10:40-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码