集合(set)
1.先了解一下集合的特性:
a.集合中可以放 整型(数字 int),字符串( str 用引号引起的字符),布尔值(bool True和False),None(在py中表示无空值,是指真的为空),元组(tuple )
集合中不能存放列表,字典,集合。这三个都是可变的。
集合不能作为字典的key
集合是无序的
集合中的内容是没有重复的
集合不能修改,如果需要达到修改的效果,只能先删除再增加
b.集合的书写规范
v = {1,2,3,4,5,6,7}
v = set{} 此为空集合
2.集合的功能
集合 v = {1,2}
b = {3,4}
<1>独有功能:
.add(' ') 添加 v.add(' ')
.discard(' ') 删除(如果集合中没有要删除的值,不会显示报错信息) v.discard('1')
.pop 随机删除 v.pop()
.remove 删除(如果集合中没有要删除的值,会显示报错信息) v.remove(' ')
.update 批量添加 v.update(' ') / v.update({' '}) / v.update({ })
.intersection 交集 a = v.intersection({1,"李",}) / a = v.intersection(b)
.union 并集 a = v.union({1,"李"}) / a = v.union(b)
.difference 差集(输出v没有,后面有的) a=v.difference({1,"李少奇",}) / a=v.difference(b)
<2>公共功能:
len() 长度计算 len(v)
for 循环(集合无序,所以是瞎几把显示) for i in v:
3.集合的嵌套
<1>哈希:集合在存放在内存时,会通过哈希运算,将每一个值进行运算,得到一个值,也是其在内存上的对应位置,用于快速查找
<2>特殊情况:
集合里面元素 0 FALSE 1 Ture 是重复值,
info ={1:2,True:3}
print(info)
---------结果:
{1: 3}