Python字典和集合
Posted 柒禾
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python字典和集合相关的知识,希望对你有一定的参考价值。
Python字典(Dict)和集合(set):
字典(Dict):使用键值(key - value)存储,通过key查找value的速度非常快。
集合(Set):拥有不重复的元素,无顺序
字典的特点:
1.key必须唯一
2.key必须是不可变对象(不能是list等可变对象)
3.字符串,整数都可以作为key
集合的特点:
1.无序,不重复的元素
2.必须要以一个list 或者 tuple 或 dict 作为输入集合(初始化必须是这3类)。
字典的操作:
1.get(key): 查看dict中是否有key值,有返回True, 否则返回 False
2.下标访问:print(dict[key]) #这样没有key的话会报异常
3.添加数据:dict[key] = date; # 如果之前字典中没有key值,就是添加数据;若有的话,就是覆盖之前存在的数据。
4.删除数据:dict.pop(key): 删除key链接的value
5.字典遍历:
一.键值key的遍历:
for key in dict:
print(key)
二.value值的遍历:
for value in dict.values():
print(yalue)
三.键值和vaule值的遍历:
for k, v in dict.item():
print(k, v)
四.下标和value值的遍历(不常用):
for i, v in enumerate(dict):
print(i, v)
6.与list的对比:
一.查找和插入的速度非常快,并且不会随着数据的增多而变慢
二.浪费内存空间
集合的操作:
1.创建:
s1 = set(list)
s2 = set(tuple)
s3 = set(dict)
2.添加数据:
一.插入单个元素
s1.add(date) :
注意事项: 不能添加list, dict可变对象,但是可以用tuple;添加已经有的元素不会报错,但是没有效果。
二.插入多个元素
s1.update(date) : date可以使list, str, tuple 但是是将其中的元素打乱逐个添加,也可能有添加后有顺序。
3.删除元素:s1.remove(date) : 删除其中的date元素
4.遍历:
for i in set:
print(i)
5.集合的运算(都是形成新的集合):
一.交集:
s1 = s2 & s3
二.并集:
s1 = s2 | s3
6.与list 和 tuple的转换:
s1 = set(lsit)
list1 = list(s1)
s2 = set(tuple)
tuple1 = tuple(s2)
应用场景:用来对list和tuple中的元素去重
以上是关于Python字典和集合的主要内容,如果未能解决你的问题,请参考以下文章