Python基础-day07

tu1 = (1)      # 括号里是什么数据类型,tu1就是什么数据类型

tu2 = (1,)     # 元组

 

集合:可变的数据类型。但是它里面的元素必须是不可变的数据类型,无序,

不重复。

 

set1 = set({1, 2, 3})

set2 = {1, 2, 3, [2, 3], {'name': 'aa'}}  # 错误

# 里面的数据类型只能是不可变的

 

集合 添加

# add

set1.add('女神')

 

# update

set1.update('abc')

这种更新方式对于字符串来说,会先打散,然后放到集合中。

 

集合 删除

set1.pop()   # 随机删除

set1.clear()  # 清空

del set1

没有改,因为集合的元素都是不可变的。

 

集合 查询

遍历查询

 

set1 = {'a', 'b', 'c'}
set2 = {'a', 'e', 'd'}

集合 交集

set1 & set2

set1.intersection(set2)

{'a'}

 

集合 并集

set1 | set2

set2.union(set1)

{'e', 'a', 'b', 'd', 'c'}

 

集合 反交集

set1 ^ set2

{'c', 'e', 'b', 'd'}

先找到交集{'a'},然后分别取出set1和set2中多余的部分,然后组成新的集合。

 

集合 差集

set1 - set2

{'c', 'b'}

 

从set1中减去set2后(指的是减去set2的那部分),就只剩下b和c了。

 

集合 子集

set1 < set2

set1.issubset(set2)

 

集合 超集

set1 < set2

set2.issuperset(set1)

 

集合的去重特性

li = [1, 2, 33, 33, 2, 1, 4, 5, 6, 6]

set1 = set(li)   # 去重的过程,利用了集合的特性:无序,不重复

li = list(set1)  # 然后再将集合转变为列表,比我们自己写去重方法要好

[1, 2, 33, 4, 5, 6]

 

集合本身是可变类型,为了让它不可变,我们可以冻住它

s = frozenset('yang')

print(s, type(s))

posted @ 2019-10-29 21:54  道霖  阅读(123)  评论(0)    收藏  举报