# 集合的定义
s =set()print(type(s))print(s,"\n")# 如果只是用大括号定义,则定义的是一个 dict 类型# 如果一定要用大括号定义集合,则大括号内一定要有值
d ={}print(type(d))print(d,"\n")
s ={1,2,3,4}print(type(s))print(s)
# 成员检测# in, not in
s ={2,3,"JingTen","i","python"}print(s)if"python"in s:print("I like python.")if666notin s:print("6个毛线")
{'python', 2, 3, 'i', 'JingTen'}
I like python.
6个毛线
# for 循环
s ={2,3,"JingTen","i","python"}for i in s:print(i)print("\n")# 带有元组的集合遍历
s ={(1,2,3),("i","like","python"),(4,5,6)}for k,m,n in s:print(k,"--",m,"--",n)print("\n")for k in s:print(k)
python
2
3
i
JingTen
i -- like -- python
4 -- 5 -- 6
1 -- 2 -- 3
('i', 'like', 'python')
(4, 5, 6)
(1, 2, 3)
集合的内涵
# 普通集合内涵# 以下集合在初始化后自动去重
s ={23,223,454,55,3,2,3,3,2,4,5,6,4}print(s,"\n")
ss ={i for i in s}print(ss,"\n")# 带条件的集合内涵
sss ={i for i in s if i %2==0}print(sss,"\n")# 多循环的集合内涵
s1 ={1,2,3,4}
s2 ={"i","like","python"}
s ={m*n for m in s2 for n in s1}print(s)
# len,max,min
s ={23,4,5,6,7,444,66,567,3}print(len(s))print(max(s))print(min(s),"\n")# set 生成一个集合
l =[1,2,3,4,3,4,444,2,3,4]
s =set(l)print(s,"\n")# add 向集合内添加元素
s ={1}
s.add(334)print(s,"\n")# clear 原地清空,原集合的 id 不变
s ={1,2,3,4,5}print(s)print(id(s))
s.clear()print(id(s),"\n")# copy 拷贝# remove 移除指定的值,直接改变原有值,如果要删除的值不存在,则报错# discard 移除指定的值,如果要移除的值不存在,则不报错
s ={11,23,4,1,56,66}
s.remove(4)print(s)
s.discard(1)print(s)print("-"*40)
s.discard(10000)print(s)
s.remove(10000)