Python字典操作全解:创建、访问、增删改查与排序遍历
本文详解Python中字典的核心操作方法,涵盖从创建、访问到增删改查的完整流程。重点解析如何按Key或Value进行排序,多种遍历方式及字典与列表、集合的性能差异对比,帮助开发者高效掌握字典使用技巧。
字典是Python中另一种可变容器模型,能够存储任意类型的数据对象。
在字典结构中,每个键值对(key=>value)通过冒号(:)进行分隔,各个键值对之间则使用逗号(,)隔开,整个字典内容被包含在花括号({})之中。
字典的值没有数量限制,可以是任何Python对象,既包括标准对象也包括用户自定义对象;然而键必须是唯一的,若对同一键重复赋值,系统将保留后一个值。
字典的值可以是任何数据类型,但键必须是不可变类型,例如字符串、数字或元组;列表等可变类型不能作为字典的键。
一、字典的创建与访问方法
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
dict2 = { }; //空字典
print "dict['Name']: ", dict['Name'];
print "dict['Age']: ", dict['Age'];
当字典中包含列表时,示例代码为:dict={'yangrong':['23','IT'],"xiaohei":['22','dota']}
当字典中包含嵌套字典时,示例代码为:dict={'yangrong':{"age":"23","job":"IT"},"xiaohei":{"'age':'22','job':'dota'"}}
二、字典的修改与添加操作
dict['Age'] = 8; # update existing entry
dict['School'] = "DPS School"; # Add new entry
三、字典的删除操作
示例代码:del dict['Name'] # 删除键是'Name'的条目
示例代码:dict.clear() # 清空字典中所有条目
示例代码:del dict # 删除整个字典对象
四、查询字典中是否包含指定键
dict.has_key(k)
若指定的键存在于字典dict中,则返回true,否则返回false。
查看所有键值对的常用方法包括:dict.keys()、dict.values()、dict.items();上述方法返回值的类型为列表。
五、遍历字典的多种方式
for d,x in dict.items():
print "key:"+d+",value:"+x
for k in dict.keys():
print "key:"+k+",value:"+dict[k]
六、字典排序实现
按照Key进行排序的示例代码为:
print sorted(dict1.items(), key=lambda d: d[0])
或者使用以下代码:
sorted(d.items(), lambda x, y: cmp(x[0], y[0]))
实现反序排列的代码为:
sorted(d.items(), lambda x, y: cmp(x[0], y[0]), reverse=True)
按照Value进行排序的示例代码为:
print sorted(dict1.items(), key=lambda d: d[1])
或者使用以下代码:
sorted(d.items(), lambda x, y: cmp(x[1], y[1]))
实现Value反序排列的代码为:
sorted(d.items(), lambda x, y: cmp(x[1], y[1]), reverse=True)
接下来介绍List、Dict与Set之间的主要区别
List(列表):
支持按距离差访问元素
顺序访问,速度相对较慢
存储空间要求较小
Dict(字典):
支持按索引访问元素
需要较大的内存空间,但访问速度非常快
Set(集合):
元素不可重复
其他特性与Dict基本类似
集合支持一系列标准操作,包括并集、交集、差集和对称差集,具体示例如下:
a = t | s # t 和 s的并集
b = t & s # t 和 s的交集
c = t – s # 求差集(项在t中,但不在s中)
d = t ^ s # 对称差集(项在t或s中,但不会同时出现在二者中)
灵活使用字典将对你的Python编程工作带来很大的帮助,大家一定要熟练掌握Python字典的使用方法
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









