数据结构之字典(Python)
数据结构之字典
在python中,字典是一系列键-值对。每个键都与一个值相关联。键只能是字符串,而与键相关联的值可以是数字、字符串、元组、列表乃至字典。字典中的值可以相同,但键不能有重复
键和值之间用冒号分隔,而键-值对之间用逗号分隔。
1. 创建空字典
# 创建空字典
object_dict = dict() # 或者object_dict = {}
# 打印字典
print (type(object_dict))
print (object_dict)

2. 添加键值对
# 创建空字典
object_dict = dict() # 或者object_dict = {}
# 打印字典
print (object_dict)
# 添加键值对
object_dict['西游记'] = '唐僧'
object_dict['水浒传'] = '宋江'
object_dict['三国演义'] = '吕布'
object_dict['红楼梦'] = '林黛玉'
# 打印更新后的字典
print (object_dict)

3. 删除键值对
del :删除指定键值对,必须指定字典名和要删除的键
# 创建字典
object_dict = {'西游记': '唐僧', '水浒传': '宋江', '三国演义': '吕布', '红楼梦': '林黛玉'}
# 打印字典
print (object_dict)
# 查找键值对
if '西游记' in object_dict.keys():
del object_dict['西游记']
# 打印更新后的字典
print (object_dict)

4. 修改键值对
# 创建字典
object_dict = {'西游记': '唐僧', '水浒传': '宋江', '三国演义': '吕布', '红楼梦': '林黛玉'}
# 打印字典
print (object_dict)
# 修改键值对
if '西游记' in object_dict.keys():
object_dict['西游记'] = '孙悟空'
# 打印更新后的字典
print (object_dict)

5. 查找键值对
# 创建字典
object_dict = {'西游记': '唐僧', '水浒传': '宋江', '三国演义': '吕布', '红楼梦': '林黛玉'}
# 打印字典
print (object_dict)
# 查找键值对
if '西游记' in object_dict.keys():
print ("键:{} 值:{}".format( '西游记', object_dict['西游记']))

6. 遍历字典
6.1 遍历键值对
# 创建字典
object_dict = {'西游记': '唐僧', '水浒传': '宋江', '三国演义': '吕布', '红楼梦': '林黛玉'}
# 打印字典
print (object_dict)
# 遍历键值对
for key, value in object_dict.items():
print ("\nKey: " + key)
print ("Value: " + value)

6.2 遍历键
# 创建字典
object_dict = {'西游记': '唐僧', '水浒传': '宋江', '三国演义': '吕布', '红楼梦': '林黛玉'}
# 打印字典
print (object_dict)
# 遍历键值对
for key in object_dict.keys():
print ("\nKey: " + key)

6.3 遍历值
# 创建字典
object_dict = {'西游记': '唐僧', '水浒传': '宋江', '三国演义': '吕布', '红楼梦': '林黛玉'}
# 打印字典
print (object_dict)
# 遍历键值对
for value in object_dict.values():
print ("\nVlaue: " + value)

7. 集合
set:剔除重复项
# 创建字典
object_dict = {'西游记': '唐僧', '水浒传': '宋江', '三国演义': '吕布', '红楼梦': '林黛玉', '白蛇传':'唐僧'}
# 打印字典
print (object_dict)
# 值集合,剔除重复值
for value in set(object_dict.values()):
print ("\nVlaue: " + value)

8. 嵌套
未完待续。。。

浙公网安备 33010602011771号