15-python-集合

# 集合    可变数据类型  ,但是集合里面的元素是不可变数据类型,
# 无序,不重复

# set1 = set({1,2,3})
# print(set1)       # 打印结果:{1, 2, 3}
# ------------------------------增--------------------------
set1 = {'q','w','e','asd','zxc','q'}

# add() # 随机将内容插入
1 set1.add('这是新内容')
2 print(set1)         # 打印结果:{'asd', 'zxc', '这是新内容', 'q', 'e', 'w'}

# update() # 会分解元素 并且随机插入set1
1 set1.update('这是第二个新内容')
2 print(set1)        # 打印结果:{'内', '这', 'q', '这是新内容', 'w', '新', 'zxc', '第', '二', '是', '容', '个', 'asd', 'e'}

# ------------------------------删--------------------------
# pop # 随机删除 有返回值

set1.pop()
print(set1)


# remove() # 按元素去删除
set1.pop()
print(set1)

# clear() # 清空集合
set1.clear()
print(set1)        # 打印结果:set()


# del # 删除整个集合
del set1


# ------------------------------查--------------------------
# for i in set1:
#     print(i)


# ------------------------------交集 / 并集--------------------------
# & 交集 共有的

1 set2 = {1,2,3,4}
2 set3 = {4,5,6,1}
3 
4 set4 = set2 & set3
5 print(set4)                     # 打印结果:{1, 4}
6 print(set2.intersection(set3))  # 打印结果:{1, 4}

# union 并集 两个合集起来,重复的去掉
print(set2|set3)                # 打印结果:{1, 2, 3, 4, 5, 6}

# ^ 反交集 除了共有的 剩下的就是返回结果
print(set2^set3)                # 打印结果:{2, 3, 5, 6}
print(set2.symmetric_difference(set3))  # 打印结果:{2, 3, 5, 6}

 





set0 = {1,2,3}
set00 = {1,2,3,4,5,6}
# 这两个结果相同,都是说明set0 是 set00 的子集
print(set0 < set00)          # 打印结果:True
print(set0.issubset(set00))# 打印结果:True


# 这两个结果相同,都是说明set0 是 set00 的超集
print(set0 > set00)           # 打印结果:False
print(set0.issuperset(set00)) # 打印结果:False

# 去重
1 li = [1,2,3,41,1,1,2,3,4]
2 nset = set(li)
3 li = list(nset)
4 print(li)           # 打印结果:[1, 2, 3, 4, 41]
posted @ 2018-09-28 16:21  _Q  阅读(137)  评论(0)    收藏  举报