目录
字典
alien_0 = {'color': 'green', 'points': 5}
使用字典
访问字典中的值
print(alien_0['color'])
print(alien_0['points'])
添加键-值对
alien_0['x_position'] = 0
alien_0['y_position'] = 25
print(alien_0)
修改字典中的值
alien_0['color'] = 'yellow'
删除键-值对
注意:删除的键-值对永远消失了
del alien_0['points']
print(alien_0)
由类似对象组成的字典
favorite_language = {
'jen': 'python',
'sarah': 'c',
'edward': 'ruby',
'phil': 'python',
}
遍历字典
遍历所有的键-值对
user_0 = {
'username': 'efermi',
'first': 'enrico',
'last': 'fermi',
}
for key, value in user_0.items():
print("\nKey: " + key)
print("Value:" + value)
遍历字典中的所有键
favorite_language = {
'jen': 'python',
'sarah': 'c',
'edward': 'ruby',
'phil': 'python',
}
# keys()可以不写,但是写了代码会易于阅读
for name in favorite_language.keys():
print(name.title())
按顺序遍历字典中的所有键
favorite_language = {
'jen': 'python',
'sarah': 'c',
'edward': 'ruby',
'phil': 'python',
}
for name in sorted(favorite_language.keys()):
print(name.title() + ", thank you for talking the poll.")
遍历字典中的所有值
favorite_language = {
'jen': 'python',
'sarah': 'c',
'edward': 'ruby',
'phil': 'python',
}
# 遍历字典中的所有值
print("The following language have been mentioned:")
for language in favorite_language.values():
print(language.title())
遍历字典中的所有值(剔除重复值)
favorite_language = {
'jen': 'python',
'sarach': 'c',
'edward': 'ruby',
'phil': 'python',
}
print("The following language have been mentioned:")
#调用set(),可以让python找出列表中独一无二的元素,并使用这些元素来创建一个集合
for language in set(favorite_language.values()):
print(language.title())
嵌套(列表中存储字典)
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:
print(alien)
# 创建一个用于外星人的空列表
aliens = []
# 创建30个绿色的外星人
for alien_number in range(30):
new_alien = {'color': 'green', 'points': 5, 'speed':'slow'}
aliens.append(new_alien)
# 处理成群结队的外星人
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'] = 'fast'
alien['points'] = 15
# 显示前五个外星人
for alien in aliens[:5]:
print(alien)
print('...')
print("Total number of aliens: " + str(len(aliens)))
在字典中存储列表
# 存储所点披萨的信息
pizza = {
'crust': 'thick',
'toppings': ['mushroom', 'extra cheese'],
}
# 概述所点的披萨
print("You ordered a " + pizza['crust'] + '-crust pizza' + "with the following toppings:")
for topping in pizza['toppings']:
# \t 是制表符
print('\t' + topping)
favorite_languages = {
'jen': ['python', 'ruby'],
'sarah': ['C'],
'edward': ['ruby', 'go'],
'phile': ['python', 'haskell']
}
for name, languages in favorite_languages.items():
print('\n' + name.title() + "'s favorite languages are:")
for language in languages:
print('\t' + language.title())
在字典中存储字典
users = {
'aeinstein':{
'first': 'albert',
'last': 'einstein',
'location': 'princeton',
},
'mcurie':{
'first': 'marie',
'last': 'curie',
'location': 'paris',
},
}
for username, user_info in users.items():
print('\nUsername:' + username)
full_name = user_info['first'] + " " + user_info['last']
location = user_info['location']
print("\tFull name: " + full_name.title())
print("\tlocation: " + location.title())