栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python学习笔记3--数据结构之「集合」

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python学习笔记3--数据结构之「集合」

一、集合的定义
  1. 集合(set)是一个无序的不重复元素序列。
  2. 创建集合用花括号或 set() 函数。
  3. 创建空集合只能用 set(),不能用 {},{} 创建的是空字典。
  4. 基本用法包括成员检测、消除重复元素。
# 集合的定义
a = {1}  # 不能使用a={},这样定义的是一个空字典。
b = set()  # 定义一个空集合
c = set('qwertyuiq')
print(type(a))
print(type(b))
print(c) # 打印出来是无序的不重复元素序列

输出结果:
>>> 
>>> 
>>> {'r', 'u', 't', 'y', 'w', 'i', 'q', 'e'}
二、集合的内置函数与基本操作
  1. 集合的数学运算
a = {1,2,3}
b = {1,4,5}

# 求并集
print(a.union(b))
print(a | b)  

# 求交集
print(a.intersection(b))
print(a & b)  

# 求差集
print(a.difference(b))
print(a - b)  

# 不同时包含于a和b的元素
print(a ^ b)

输出结果:
>>> {1, 2, 3, 4, 5}
>>> {1, 2, 3, 4, 5}
>>> {1}
>>> {1}
>>> {2, 3}
>>> {2, 3}
>>> {2, 3, 4, 5}
  1. 同列表推导式类似,集合同样支持集合推导式
a = {i  for i in 'hauhusbshsgdbahah' if i not in 'ha'}
print(a)

输出结果:
>>> {'s', 'b', 'd', 'g', 'u'}
  1. 添加元素
# 添加元素
a = {1,2,3}
a.add('a')
print(a)

# 下面这个方法也可以添加元素,且参数可以是列表,元组,字典等
b = {1,4,5}
b.update('b')      # 添加元素
print(b)

c1 = {6,7,8,9}
c1.update([1,2,3])  # 添加列表
print(c1)

c2 = {6,7,8,9}
c2.update(('chinese','english','math','music'))  # 添加元组
print(c2)

c3 = {6,7,8,9}
c3.update({4,5}) # 添加集合
print(c3)

c4 = {6,7,8,9}
c4.update({"name":"hahaha"})  # 添加字典
print(c4)

输出结果:
>>> {'a', 1, 2, 3}
>>> {'b', 1, 4, 5}
>>> {1, 2, 3, 6, 7, 8, 9}
>>> {6, 7, 8, 9, 'chinese', 'music', 'math', 'english'}
>>> {4, 5, 6, 7, 8, 9}
>>> {6, 7, 8, 9, 'name'}
  1. 移除元素
# 将元素 x 从集合 s 中移除,如果元素不存在,则会发生错误
a = {1,2,3}
a.remove(3)
print(a)
b = {"aaa","bbb","ccc"}
b.remove("eee")  # 这种情况就会报错
print(b)

# 移除集合中的元素,且如果元素不存在,不会发生错误
c = {4,5,6}
c.discard('7')
print(c)

# 设置随机删除集合中的一个元素
# pop 方法会先对集合进行无序的排列,然后将这个无序排列集合的左面第一个元素进行删除
d = {"hello","123","aaa"}
d.pop()
print(d)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/619031.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号