Python--集合类型及操作
2020-12-13 05:11
标签:使用 add erro 副本 car nbsp key 开发 strong Python数据类型---集合 -集合类型定义: 集合类型与数学中的集合概念一致,是多个元素的无序组合(每个元素唯一,不存在相同元素); 集合用大括号{}表示,元素间用逗号分隔; 建立集合类型用{}或set() ,建立空集合,必须使用set(); -集合操作符: 假设S/T是已定义的两个集合; -集合处理方法: -集合类型应用场景: 1.包含关系比较 2.数据去重(集合类型所有类型无重复) 更多应用等待大家在实际应用中实践开发! 如有错误或者遗漏欢迎留言指证补充! Python--集合类型及操作 标签:使用 add erro 副本 car nbsp key 开发 strong 原文地址:https://www.cnblogs.com/bilbylu/p/11135061.html>>>A={"python",520,("python",520)} #使用{}建立集合
{520, (‘python‘, 520), ‘python‘}
>>>B=set("ppyy1223") #使用set()建立集合
{‘2‘, ‘1‘, ‘3‘, ‘y‘, ‘p‘}
操作符及应用
描述
S | T
返回一个新集合,包括在集合S和T中的所有元素
S - T
返回一个新集合,包括在集合S但不在T中的元素
S & T
返回一个新集合,包括同时在集合S和T中的元素
S ^ T
返回一个新集合,包括集合S和T中的非相同元素
S
返回True/False,判断S和T的子集关系
S >= T 或 S > T
返回True/False,判断S和T的包含关系
S |= T
更新集合S,包括在集合S和T中的所有元素
S -= T
更新集合S,包括在集合S但不在T中的元素
S &= T
更新集合S,包括同时在集合S和T中的元素
S ^= T
更新集合S,包括集合S和T中的非相同元素
>>> S={"p","y",123}
>>> T=set("ppyy123")
>>> S-T
{123}
>>> S|T
{‘2‘, ‘1‘, ‘p‘, ‘3‘, ‘y‘, 123}
>>> S^T
{‘3‘, ‘2‘, 123, ‘1‘}
>>> S&T
{‘y‘, ‘p‘}
操作函数或方法
描述
S.copy()
返回集合S的一个副本
len(S)
返回集合S的元素个数
x in S
判断S中元素x,x在集合S中,返回True,否则返回False
x not in S
判断S中元素x,x不在集合S中,返回False,否则返回True
set(x)
将其他类型变量x转变为集合类型
S.add(x)
如果x不在集合S中,将x增加到S
S.discard(x)
移除S中元素x,如果x不在集合S中,不报错
S.remove(x)
移除S中元素x,如果x不在集合S中,产生KeyError异常
S.clear()
移除S中所有元素
S.pop()
随机返回S的一个元素,更新S,若S为空产生KeyError异常
>>> S={"py",123,"thon"}
>>> T=S.copy()
>>> T
{‘py‘, 123, ‘thon‘}
>>> for i in range(3):
T.pop()
‘py‘
123
‘thon‘
>>> T
set()
>>> "p" in {"p",123}
True
>>> {"p","y"} >= {"p","y",123}
False
>>> ls = ["p","y","p","y",123]
>>> S=set(ls) #利用集合无重复的特性
>>> S
{123, ‘p‘, ‘y‘}
>>> lt = list(S) #再将集合转变为列表
>>> lt
[123, ‘p‘, ‘y‘]