字典
使用字典
字典基本概念
字典由一系列的键值对构成,每一个键和值互相关联。定义一个字典一般用花括号中加键值对。如定义一个字典height
的语句:height = {'Rick':180,'Bob':175}
访问字典中的值
要访问字典中的值用字典名[键名]
。如height['Rick']
。
添加、修改、删除键值对
Jimmy = {'height':175,'weight':65}
print(Jimmy)
Jimmy['hobby'] = 'football' #添加一个键值对
print(Jimmy)
Jimmy['weight'] = 60 #修改一个键值对
print(Jimmy)
del Jimmy['hobby'] #删除一个键值对,用del语句
print(Jimmy)
'''
结果:
{'weight': 65, 'height': 175}
{'weight': 65, 'height': 175, 'hobby': 'football'}
{'weight': 60, 'height': 175, 'hobby': 'football'}
{'weight': 60, 'height': 175}
'''
由类似对象组成的字典
字典不仅可以存储一个对象的多种信息,也可以储存多个对象的同一种信息。
favourate_languages = {
'Rick':'c',
'Sarah':'python',
'Jenny':'ruby',
}
#用这种格式定义字典可以增强代码可读性
遍历字典
遍历键值对用方法items()
。该方法返回一个键值对列表,然后用两个变量来存储这些键值对,再用for
循环即可。
遍历键用方法keys()
。遍历字典时是默认遍历所有的键的。
遍历值用方法value()
。
favourate_languages = {
'Rick':'c',
'Sarah':'python',
'Jenny':'ruby',
}
for name,language in favourate_languages.items():
print(name)
print(language)
for name in favourate_languages.keys():
print(name)
for language in favourate_languages.values():
print(language)
嵌套
字典列表
man_0 = {'name':'Rick','height':180,'weight':68}
man_1 = {'name':'Jonny','height':175,'weight':60}
man_2 = {'name':'Mike','height':178,'weight':65}
men = [man_0,man_1,man_2]
for man in men:
print(man)
'''
结果:
{'name': 'Rick', 'height': 180, 'weight': 68}
{'name': 'Jonny', 'height': 175, 'weight': 60}
{'name': 'Mike', 'height': 178, 'weight': 65}
'''
在字典中存储列表
favourate_languages = {
'Jonny':['c','javascript'],
'Ben':['c++','python'],
'Mike':['java','html'],
}
print(favourate_languages)
'''
结果:
{'Jonny': ['c', 'javascript'], 'Ben': ['c++', 'python'], 'Mike': ['java', 'html']}
'''
在字典中存储字典
假如一个网站需要存储用户的真实姓名和地址,可以用到这种嵌套。
users = {
'pig':{
'name':'Rick',
'location':'ChongQing',
},
'star':{
'name':'Amy',
'location':'Paris',
},
}
print(users)
'''
结果:
{'pig': {'name': 'Rick', 'location': 'ChongQing'}, 'star': {'name': 'Amy', 'location': 'Paris'}}
'''