[toc]
python基础七 基础数据类型-集合
1.集合
1.1 含义
集合是python中的一种数据类型
1.2 关键字
set
1.3 定义
空集合 set()
#定义集合示例
s = {1,2,3}
1.4 特点
1.去重,集合中的元素都是唯一的
2.集合关系
3.集合无序、可变、可迭代
1.5 集合使用示例
1.集合去重
lst = [1,2,3,1,4]
print (set(lst))
{1, 2, 3, 4}
1.6 集合面试题示例
一行代码去重
⚠️需要注意的是原先的数据类型是什么,在做完去重处理后需要转换为原先的数据类型
lst = [1,2,3,5,6,1,5,6,7,8,9,33,1,2,33,66]
print (set(lst)) //不完美做法,没有将数据类型转换为原来的列表
print (list(set(lst)))
[1, 2, 3, 33, 5, 6, 7, 8, 9, 66]
1.7 集合核心说明 ⚠️集合就是一个没有值的字典
⚠️集合就是一个没有值的字典
为什么说集合是一个没有值的字典???
字典的值:任意
字典的键:不可变、可哈希
"""示例说明,列表是可变的
如果集合中能打印列表,那么说明集合中的元素相当于字典中的值,也就是集合是一个没有键的字典
如果集合中不能打印列表,那么说明集合中的元素相当于字典中的键,也就是集合是一个没有值的字典
"""
#打印一个可变类型
s = {1,2,[1,2,3]}
print (s)
TypeError: unhashable type: 'list' //打印结果报错列表不可哈希
#打印一个不可变类型
s = {1,2,(1,2,3)}
print (s)
{1, 2, (1, 2, 3)}
1.8 集合的增删改查
1.8.1 集合的增
#方式1 update
s = set()
s.update('play')
print (s)
{'l', 'a', 'p', 'y'} //集合中的update会把增加的内容迭代添加
#方式2 add
s = set()
s.add('play') //add在集合中是常用的
print (s)
{'play'}
1.8.2 集合的删
#方式1 pop 随机删除
s = {1,2,3,'呵呵',5}
s.pop() //⚠️集合中的pop是随机删除
print (s)
{2, 3, 5, '呵呵'}
{1, 2, 3, 5}
#方式2 remove 通过元素名称删除
s = {1,2,3,'呵呵',5}
s.remove("呵呵")
print (s)
{1, 2, 3, 5}
#方式3 clear
s = {1,2,3,'呵呵',5}
s.clear()
print (s)
set() //⚠️ 空集合为set()