认识字典:
字典是一系列键—值对
要思考什么样的数据集合,适合使用字典来存储。
可将任何Python对象用作字典中的值,包括但不限于数值,字符串,列表,字典。
在Python中,字典用放在花括号{}中的一系列键—值对表示。
my_dict = {key1:value1, key2:value2, ...}
要获取与键相关联的值,可依次指定字典名和放在方括号内的键
print(my_dict[key1])
添加键—值对,可依次指定字典名、用方括号括起的键和相关联的值。
my_dict[key3] = value3
修改字典中的值,可依次指定字典名、用方括号括起的键以及与该键相关联的新值:
my_dict[key1] = new_value1
对于字典中不再需要的信息,可使用del语句将相应的键—值对彻底删除:
del my_dict[key1]
遍历所有的键—值对:
for key, value in my_dict.items:
print(key,value)
默认遍历键,所以:
for key in my_dict: 等效于 for key in my_dict.keys():
要以特定的顺序返回元素,一种办法是在for循环中对返回的键进行排序。为此,可使用函
数sorted()来获得按特定顺序排列的键列表的副本:
for key in sorted(my_dict.keys()):
如果只希望获取字典包含的值,可使用方法values(),它返回一个值列表,而不包含任何键。
for value in my_dict.values():
为剔除重复项,可使用集合(set)集合类似于列表,但每个元素都必须是独一无二的:
for value in set(my_dict.values()):
将一系列字典存储在列表中,或将列表作为值存储在字典中,这称为嵌套。
一般来说,相同组织结构的字典集合,作为列表元素存储在一个列表中较为常见。
item_1 = {key1:value1_1, key2=value2_1, key3=value3_1}
item_2 = {key1:value1_2, key2=value2_2, key3=value3_2}
item_3 = {key1:value1_3, key2=value2_3, key3=value3_3}
my_list = [item1, item2, item3]
每当需要在字典中将一个键关联到多个值时,都可以在字典中嵌套一个列表。
也可以把字典存储到字典中。
嵌套应控制层级,构造代码时,应该把当前操作的作用域搞清楚。