1、dict字典类型的性质
什么是字典?形如
d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
字典的一大特性便是采用hash查找,所以字典的查找时间复杂度在常数内的时间,但缺点就是会比较消耗内存。如此的特性,让dict在编程中经常需要用到且是一个很好的工具。
下面介绍下具体使用分别为创建、修改、删除。
一、创建
dict["A"]=1;
如果A已经存在dict中,则覆盖原有内容,否则创建新键值(key)。
二、修改
dict["A"]=2;
既可以完成修改
三、删除
采用pop(key)即可以删除对应的key及value
四、判断key是否存在于dict
key in dict
#True 即存在
或者采用get()函数,如果key不存在,可以返回None,或者自己指定的value.
>>> d.get('Thomas')
>>> d.get('Thomas', -1)
五、关于dict的排序问题。
当我们对dict的key进行排序
[(k,di[k]) for k in sorted(di.keys(),reverse=True)]
采用sorted进行排序,这里注意与sort的区别。sorted需要传入目标数据的值,reverse控制降序与升序,
当我们相对value进行排序时
sorted(dict.items(), key=lambda d: d[1],reverse=True)
对dict的每一个项进行排序,key为每个项的第二个元素即value值。
2、关于set
set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。
要创建一个set,需要提供一个list作为输入集合:
s = set([1, 1, 2, 2, 3, 3])
# 添加
s.add(5)
#remove
s.remove(5)