第6章 字典
2021-04-06 本文已影响0人
lkj666
参考书籍:《Python编程 从入门到实践》
1. 字典的定义和访问
alien_0 = {
'color': 'green',
'point': '5'
}
print(alien_0['color'])
{}
定义字典,通过访问键名来访问值
2. 变动字典
2.1 创建字典
方式一:利用定义直接创建
方式二:
aline_0 = {}
alien_0['color'] = 'green'
alien_0['points'] = '5'
2.2 添加键值对
aline_0 = {'color': 'green', 'points': 5}
aline_0['x_position'] = 0
字典是一种动态结构,可以随时在其中添加键-值对
2.3 删除键值对
aline_0 = {'color': 'green', 'points': 5}
del alien_0['color']
用
del语句
删除
2.4 修改键值对
aline_0 = {'color': 'green'}
aline_0 =['color'] = 'yellow'
3. 遍历字典
3.1 遍历所有的键-值对
user_0 = {
'username': 'efermi',
'first': 'enrico',
'last': 'fermi',
}
for key, value in user_0.items():
print("\nKey: " + key)
print("\nValue: " + value)
3.2 遍历所有的键
favorit_languages = {
'jen': 'python',
'sarah': 'c',
'edward': 'ruby',
'phil': 'python',
}
for name in sorted(favorite_languages.keys()):
print(name.title() + ", thank you for taking the poll.")
方法keys()
遍历键名之后,存储为了一个列表。函数sorted()
可以用来获得按特定顺序排列的键列表。
3.2 遍历所有的值
favorit_languages = {
'jen': 'python',
'sarah': 'c',
'edward': 'ruby',
'phil': 'python',
}
for langugein set(favorite_languages.values()):
print(language.title())
方法values
用于遍历字典中的值
集合set()
用于去除值中的重复值并输出
4. 嵌套
4.1 字典列表
#定义一个空列表
aliens = []
#创建30个绿色的外星人
for alien_number in range(30):
new_aline = {'color':'green', 'points':'5', 'speed':'slow'}
aliens.append(new_aline)
#修改前三个绿色外星人的属性
for alien in aliens[:3]:
if alien['color'] == 'green':
alien['color'] = 'yellow'
alien['speed'] = 'medium'
alien['points'] = 10
#显示前五个外星人
for alien in alien[0:5]:
print(alien)
#显示创建了多少个外星人
print("Total number of aliens: " + str(len(aliens)))
4.2 字典中存储列表
favorite_languages = {
'jen':['python', 'ruby'],
'sarah':['c'],
'edward':['ruby', 'go'],
'phil':['python', 'haskell'],
}
for name, languages in favorite_languages.items():
if len(languages) == 2:
print("\n" + name.title() + "'s favorite languages are: ")
for language in languages:
print("\t" + language.title())
else:
print(name + "'s favorite language is " + languages)