字典
字典:用 {} 表示 用于存储键值对
每个键值对之间用,号隔开,最后一个不用
键值对格式==》键:值
#键值对之间用:分隔
student_grades={
"x":90,
"y":80,
"z":60,
"a":96
}
(1)遍历字典
1、遍历整个键值对 items()
#整个键值对
for key,value in student_grades.items(): #自动匹配键制对
#key自动匹配键制对中的键,value 自动匹配键制对中的值
#key和value可以自定义名字
print(key)
print(value)
#x 90 y 80 z 60 a 96
2、遍历键
#键
for i in student_grades.keys():#枚举遍历
print(i)
#x y z a
3、遍历值
#值
for i in student_grades.values():
print(i)
#90 80 60 96
4、顺序输出值
#顺序输出
for i in sorted(student_grades.values()):
print(i)
(2)字典嵌套(列表和字典之间的相互嵌套)
#字典嵌套分为三种类型,列表中嵌套字典,字典中嵌套列表,或者字典嵌套字典
情形一、 字典列表(可存放多个变量的信息),以字典元素作为列表元素 在列表中存放多个字典
#创建3个字典
alien_0 = {'color': 'green', 'points': 5}
alien_1 = {'color': 'yellow', 'points': 10}
alien_2 = {'color': 'red', 'points': 15}
#创建列表,以字典作为列表元素
aliens = [alien_0, alien_1, alien_2]
for alien in aliens:#枚举遍历
if(alien['color']=='yellow'):
print("恭喜你猜对啦!")
【补充】:
#列表元素循环添加
#列表自动生成
aliens=[]
#创建30个字典(相同的) 并添加到列表末尾
for i in range(30):
new_alien={"color":'red',"speed":5}
aliens.append(new_alien)
#虽然每个外星人都具有相同的特征,但在python看来,每个外星人都是独立的,我们可以通过切片来获取部分外星人,进而修改他们
#修改前3个外星人列表
for alien in aliens[0:3]:
if alien['color'] == 'green':
alien['color'] = 'yellow'
alien['speed'] = 'medium'
alien['points'] = 10
elif alien['color'] == 'yellow':
alien['color'] = 'red'
alien['speed'] = 'medium'
alien['points'] = 10
情形二、列表字典(可存放多个变量的信息),在字典中存放多个列表
favorite_languages = {'jen': ['python', 'ruby'],
'sarah': ['c'],
'edward': ['ruby', 'go'],
'phil': ['python', 'haskell'] }
情形三、字典嵌套字典 例如同时存储多个用户信息
users = {
'aeinstein': { 'first': 'albert',
'last': 'einstein',
'location': 'princeton'},
'mcurie': { 'first': 'marie',
'last': 'curie',
'location': 'paris'}
}
(3)添加/删除字典元素
cities={
"Hangzhou":{
"country":"China",
"population":3000000,
"fact":"beautiful"
}
}
#添加字典元素
cities["Ningbo"]={
"country": "China",
"population": 3000000,
"fact": "beautiful"
}
#删除字典元素 del语句进行删除
del cities["Hangzhou"]
(4)访问字典元素
语法:字典名[ 键 ]
alien_0 = {'color': 'green'}
print(alien_0['color'])
#green
(5)修改字典元素值
直接通过键值访问字典元素,然后将值进行更改
alien_0 = {'color': 'green'}
print("The alien is " + alien_0['color'] + ".")
alien_0['color'] = 'yellow'
print("The alien is now " + alien_0['color'] + ".")
#The alien is green.
#The alien is now yellow.