字典vs集合

字典vs集合

字典

字典是一种用来存放若干键值对的数据类型。

一、创建字典

1.创建空的字典

字典 = {}

2.创建包含键值对的字典

字典 = {键1:值1, 键2:值2, ..., 键N:值N}

二、字典键值对的添加

1.向字典中增加键值对

字典[键] = 值

三、键值对的获取

1.通过键获取值

值 = 字典[键]

2.通过键获取值(get方法)

值 = 字典.get(键)

3.判断字典中是否包含某个键

布尔值 = 键 in 字典

4.获取所有键

键的列表 = 字典.keys()

5.获取所有值

值的列表 = 字典.values()

6.获取所有键值对的列表

值的列表 = 字典.items()

四、字典键值对的删除

1.通过键删除键值对

值 = 字典.pop(键)

2.通过键删除键值对(del 方法)

del 字典[键]

3.随机删除一个键值对

键值二元组 = 字典.popitem()

4.清空所有键值对

键值二元组 = 字典.clear()

五、字典中键值对修改

1.修改键对应的值

字典[键] = 值

2.用字典批量更新键值对

字典.update(另一字典)

六、什么时候用字典

字典的显著优势是可以通过键快速地查询数据。字典中的元素以键值对的形式存在,使用时通过键来获取和修改值,由于字典内部的特殊实现,字典通过键获取值的效率非常高。

集合

集合是一个用于存放批量元素的数据类型,它不是有序的,其中的元素没有顺序关系。集合中的元素没有重复,重复的元素将被自动剔除最终只留下一个。

一、创建集合

1.创建包含元素的集合

集合 = {元素1, 元素2, 元素N}

2.创建空集合

集合 = set()

二、集合元素的添加

1.向集合中添加一个元素

集合.add(元素)

2.从另一集合中批量添加元素

集合.update(另一集合)

三、集合元素的获取

1.查看元素是否存在于集合中

布尔值 = 元素 in 集合

四、集合元素的删除

1.随机删除一个元素,并返回这个元素

元素 = 集合.pop()

2.删除一个指定的元素

集合.remove(元素)

3.删除一个指定的元素,且不抛出 KeyError 异常

集合.discard(元素)

4.清空所有元素

集合.clear()

五、集合的运算

1.求交集

交集 = 集合1.intersection(集合2, 集合3, 集合N)
或
交集 = 集合1 & 集合2 & 集合N

2.求并集

并集 = 集合1.union(集合2, 集合3, 集合N)

3.求差集

差集 = 集合1.difference(集合2, 集合3, 集合N)

4.判断是否为子集

布尔值 = 集合1.issubset(集合2)

5.判断是否为超集

布尔值 = 集合1.issuperset(集合2)

六、什么时候用集合

集合非常重要的一个特性是元素无重复,每个元素都是唯一的,重复的元素将被自动剔除(去重)。

获取字典和集合中的元素数量

使用len函数