本文即将讲述
字典访问、添加、创建、删除del、遍历键值对items()、遍历键keys()、按顺序遍历键sorted()\b遍历值values() \剔除重复set()
1.字典
1.1 what
字典是一系列键值对(key-value),一键对应一值
想象键是个标签,对应一个叫做值的物体
用{}表示,键和值用冒号分隔,每对“键值对”之间用逗号分隔
存储一个对象的多种信息
例如:
apple={'color':'red','price':'5'}
1.2访问字典中的值
apple={'color':'red','price':'5'}
print(apple['price'])
结果:5
1.3 添加键值对(修改值也同理)
指定键,赋值
apple={'color':'red','price':'5'}
print(apple['price'])
apple['size']='small'
print(apple)
结果
{'color': 'red', 'price': '5', 'size': 'small'}
1.4创建空字典
apple={}
print(apple)
结果:{}
1.5删除字典中的键值对del
apple={'color':'red','price':'5'}
del apple['color']
print(apple)
结果:
{'price': '5'}
1.6存储众多对象的一种信息
#每个同学喜欢的水果
favourite={'Amy':'apple',
'Julia':'orange',
'Else':'banana'}
print(favourite['Amy'])
结果:apple
1.7遍历字典
1.7.1items()返回一个键值对列表
#每个同学喜欢的水果
favourite={'Amy':'apple',
'Julia':'orange',
'Else':'banana'}
for key,value in favourite.items():
print("\n"+key+' likes '+value+'.')
结果:
Amy likes apple.
Julia likes orange.
Else likes banana.
1.7.2 keys()遍历键
#每个同学喜欢的水果
favourite={'Amy':'apple',
'Julia':'orange',
'Else':'banana'}
for name in favourite.keys():
print(name)
结果:
Amy
Julia
Else
默认for name in 列表名: 也是直接遍历键,可以直接替代
1.7.3 按顺序遍历键sorted()
favourite={'Amy':'apple',
'Julia':'orange',
'Else':'banana'}
for name in sorted(favourite.keys()):
print(name)
结果:
Amy
Else
Julia
1.7.4 遍历字典中所有的值values()
favourite={'Amy':'apple',
'Julia':'orange',
'Else':'banana'}
for name in favourite.values():
print(name)
结果
apple
orange
banana
剔除重复值,用set()
favourite={'Amy':'apple',
'Julia':'orange',
'Else':'banana',
'Lily':'apple'}
for name in set(favourite.values()):
print(name)
banana
orange
apple
1.8嵌套
1.8.1字典列表
student1={'name':'Amy','age':23}
student2={'name':'Lily','age':21}
student3={'name':'Elsa','age':20}
Student=[student1,student2,student3]
for student in Student:
print(student)
结果:
{'name': 'Amy', 'age': 23}
{'name': 'Lily', 'age': 21}
{'name': 'Elsa', 'age': 20}
1.8.2 在字典中存储列表
fruit={'name':'apple','colors':['red','green']}
1.8.3 在字典中存储字典
users={'Amy':{'fruit':'apple',
'color':'green',
'grade':'7',},
'Emma':{'fruit':'orange',
'color':'blue',
'grade':'7',},}
for username,user_info in users.items():
print("\nUsername: "+username.title())
fruit=user_info['fruit']
print("\nfruit: "+fruit.title())
结果
Username: Amy
fruit: Apple
Username: Emma
fruit: Orange