集合的特征:
- 集合内数据无序,即无法使用索引和分片
- 集合内部数据元素具有唯一性,可以用来排除重复数据
- 集合内的数据,str, int, float, tuple,冰冻集合等,即内部只能放置可哈希数据
# 带有元组的集合遍历 s = {(1,2,3), ("i", "love", "wangxiaojing"), (4,5,6)} for k,m,n in s: print(k, "--", m, "--", n) for k in s: print(k) #4 -- 5 -- 6 #i -- love -- wangxiaojing #1 -- 2 -- 3 #(4, 5, 6) #('i', 'love', 'wangxiaojing') #(1, 2, 3)
# len, max, min:跟其他基本函数一致 s = {43,23,56,223,4,2,1222,4,323,1} print(len(s)) print(max(s)) print(min(s))
# set:生成一个集合 l = [1,2,3,4,3,23,1,2,3,4] s = set(l)
# add:向集合内添加元素 s = {1} s.add(334)
# copy:拷贝 # remove:移除制定的值,直接改变原有值,如果要删除的值不存在,报错 # discard:移除集合中指定的值,跟remove一样,但是如果要删除的值不存在,不报错
# pop 随机移除一个元素 s = {1,2,3,4,5,6,7} d = s.pop()
# 集合函数 # intersection或者'&': 交集 # difference或者'-':差集 # union或者'|': 并集 # issubset: 检查一个集合是否为另一个子集 # issuperset: 检查一个集合是否为另一个超集 s1 = {1,2,3,4,5,6} s2 = {5,6,7,8,9} s_1 = s1.intersection(s2) print(s_1) s_2 = s1.difference(s2) print(s_2) s_3 = s1.issubset(s2) print(s_3) #{5, 6} #{1, 2, 3, 4} #False
#冰冻集合frozenset() - 冰冻集合就是不可以进行任何修改的集合 - frozenset是一种特殊集合 # 创建 s = frozenset()