【Python 3 基础】字典dict创建方法及常用操作
本文主要介绍Ptyhon 3中字典创建方法,以及字典排序,合并等常用操作。
创建字典方法
{} 方式
1 2
| dict1 = {} dict2 = {'a':11,'b':12}
|
dict()函数 方式
1 2 3 4 5 6 7 8
| dict3 = dict() dict4 = dict(a='11',b='ddd',c='ssss')
keys = ['a','b','c','d','e'] values = [1,2,3,4] dict6 = dict(zip(keys,values))
|
字典排序
1 2
| import operator test = {'a':1,'c':2,'b':7,'f':5}
|
根据键排序
sorted() 方式
1 2
| print(sorted(test.items())) print(sorted(test.items(),reverse=True))
|
sorted + operator 方式
1 2
| print(sorted(test.items(),key=operator.itemgetter(0))) print(sorted(test.items(),key=operator.itemgetter(0),reverse=True))
|
sorted + lambda 方式
1 2
| print(sorted(test.items(),key=lambda x : x[0])) print(sorted(test.items(),key=lambda x : x[0],reverse=True))
|
根据值排序
sorted + operator 方式
1 2
| print(sorted(test.items(),key=operator.itemgetter(1))) print(sorted(test.items(),key=operator.itemgetter(1),reverse=True))
|
sorted + lambda 方式
1 2
| print(sorted(test.items(),key=lambda x : x[1])) print(sorted(test.items(),key=lambda x : x[1],reverse=True))
|
** 注意,如果值的数据类型不一样,以上根据值排序会报错,例如一下字典,值有int和str类型,lambda中要进行类型转换 **
1 2 3
| test2 = {'a':1,'c':2,'b':7,'f':'5'} print(sorted(test2.items(),key=lambda x : str(x[1])))
|
字典合并
update方法
1 2 3 4
| dictA = {'a':3,'b':7,'c':'2'} dictB = {'d':12,'f':'44'} dictA.update(dictB) print(dictA)
|
**方法
** 高版本python中可用 **
1 2
| dictC = {**dictA,**dictB} print(dictC)
|