python基础学习-集合

#__author:"Feng Lin"
#date: 2018/8/26
#集合是无序的,不重复的数据集合,它里面的元素是可哈希的(不可变类型),但是集合本身是不可哈希的(所以集合做不了字典的键)
#集合注意记住以下几点
#1.元素去重
#2.关系测试,交集、并集、差集
set1=set({1,2,3})
#集合中的元素不可变类型,否则会报错
#set2={1,2,3,{'name':'alex'},[1,2]}

#集合增加元素,add、update

set1={'wangjinxin','penglei','fangren','liuchong','lintianyi'}
print(set1)
set1.add("女神")
print(set1)
#update可增加跌代对象
set1.update(range(10))
print(set1)

#随机删除
print(set1.pop())
#按元素删除
set1.remove(1)
print(set1)

#清空集合,空集合表示为set()
set1.clear()
print(set1)
# del set1
# print(set1)

#
set2={'haha','hihi','aa','xx','dd'}
for i in set2:
    print(i)
#求交集
set1={1,2,3}
print(set1)
set2={4,5,6,7,8}
print(set2)
set3=set1 & set2
print(set3)

#求反交集
print(set1^set2)

#求并集,两种方法
print(set1|set2)
print(set2.union(set1))

#求差集
print(set1-set2)
print(set2-set1)
#判断是否为子集或者超集返回bool值
print(set1 < set2)
print(set1 > set2)

#考题,给下面列表去重
li=[1,2,33,44,22,2,2,1,4,5,6,61,2,3]
#将列表转化成集合去重
li1=set(li)
print(li1)
#将去重后的集合重新转化成列表
li=list(li1)
print(li)

#不可变集合frozenset
s=frozenset('babsddaw')
print(s,type(s))
for i in s:
     print(i)

 

posted @ 2018-08-27 00:00  啦啦啦嘻嘻嘻  阅读(104)  评论(0编辑  收藏  举报