注释
*注1 字典可存储的信息量几乎不受限制。
*注2 字典是一系列键值对。每个键都和一个值关联,可以使用键来访问与之关联的值,这个值可以是数、字符串、列表乃至字典。
*注3 字典会保留定义时元素的排列顺序。如果将字典打印出来遍历其元素,那么元素的排列顺序和其添加的顺序相同。
*注4 删除的键值对永远消失了,在使用del语句时,必须指定字典名和要删除的键。
*注5 对一个能以不同速度移动的外星人进行位置跟踪,确定现在的速度并决定应该右移多远。
# 访问值
alien_0 = {'x_position':0,'y_position':25,'speed':'medium'}
print(f"外星人原始x位置是:{alien_0['x_position']}")
# if语句 / 确定移动位置
if alien_0['speed'] == 'slow':
x_incerement = 1
elif alien_0['speed'] == 'medium':
x_incerement = 2
else:
x_incerement = 3
# 修改字典的值
alien_0['x_position'] = alien_0['x_position'] + x_incerement
print(f"移动之后外星人的x位置是:{alien_0['x_position']}")
*注6 get()方法在指定的键不存在时会返回一个默认值,方法中第一个参数用于指定键,是必不可少的;第二个参数用于指定不存在时返回的值,是可选的。
*注7 打印在朋友列表中人的名字和喜欢的语言,对其他人只打招呼。
friends = ['jam','helen']
fav_langueages = {
'ken' : 'java',
'jam' : 'c++',
'kate' : 'python',
'helen' : 'c'
}
for name,lang in fav_langueages.items():
if name in friends:
print(f"{name},我知道你喜欢{lang.title()}")
else:
print(f"你好捏{name}!")
*注8 sorted是在遍历前对列表进行排序。
*注9 将多个字典存储在列表中或将列表作为值存储在字典中,这称为嵌套。当需要在字典中将一个键关联到多个值时,可以在字典中嵌套列表。
*注10 当调用的print()中的字符串很长,需要分多行书写,可以分行来写。
print(f"你点了一个 的披萨"
"顶上馅料包括了:")
*注11
fav_lang = {
'jen':['python','rust'],
'sarah':['c'],
'asdas':['go','rust'],
'phil':['python','haskell'],
}
for name,lang in fav_lang.items():
print(name)
print(lang)
#键打印出来是引号内的部分,值是字典打印出来是字典,值是列表打印出来就是列表
for name in fav_lang.keys():
print(name)
for lang in fav_lang.values():
print(lang)
# 结果:
jen
['python', 'rust']
sarah
['c']
asdas
['go', 'rust']
phil
['python', 'haskell']
jen
sarah
asdas
phil
['python', 'rust']
['c']
['go', 'rust']
['python', 'haskell']