5200.5 Dictionaries
在Python里面,dictionary 是由一对花括号包裹{},里面包含一系列的键值对。
要访问一个key的value,可以通过[]获取。
alien_0 = {'color': 'green', 'points': 5}
print(alien_0['color'])
print(alien_0['points'])添加 & 修改
dictionary 是动态的结构,添加一个键值对,可以通过一个键的名称添加:
alien_0 = {'color': 'green', 'points': 5}
alien_0['x_position'] = 0
alien_0['y_position'] = 25
print(alien_0)修改可以直接用一个值去覆盖原有的值
alien_0['color'] = 'yellow'get获取
通过[]的形式获取值,如果没有这个键的时候会出现错误。
通过get获取,可以提供一个没有键的返回值。
如果没有提供返回值,则返回null。
alien_0 = {'color': 'green', 'speed': 'slow'}
point_value = alien_0.get('points', 'No point value assigned.')
print(point_value)循环
循环一个dictionary有多种方式。
for key, value in user_0.items()for name in favorite_languages.keys()- 不加keys,默认也是返回keys。
for name in favorite_languages
- 不加keys,默认也是返回keys。
for language in favorite_languages.values()
嵌套
列表可以嵌套Dictionary dictionary 里面的value可以是list。
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)# Make 30 green aliens.
for alien_number in range(30):
new_alien = {'color': 'green', 'points': 5, 'speed': 'slow'}
aliens.append(new_alien)
# Show the first 5 aliens.
for alien in aliens[:5]:
print(alien)
print("...")
# Show how many aliens have been created.
print(f"Total number of aliens: {len(aliens)}")你也可以在 dictionar 里面嵌套 dictionary ,但是不建议在 dictionar 里面嵌套很深。否则代码会变得越来越复杂。