您不能简单地通过输入 dict2 = dict1
来复制一个字典,因为 dict2
只会成为 dict1
的引用,对 dict1
的更改也会自动应用于 dict2
。
有多种方法可以复制字典,一种方法是使用内置的 copy()
方法。
示例,使用 copy()
方法制作字典的副本:
thisdict = { "brand": "Ford", "model": "Mustang", "year": 1964 } mydict = thisdict.copy() print(mydict)
另一种制作副本的方法是使用内置函数 dict()
。
示例,使用 dict()
函数制作字典的副本:
thisdict = { "brand": "Ford", "model": "Mustang", "year": 1964 } mydict = dict(thisdict) print(mydict)
一个字典可以包含字典,这称为嵌套字典。
示例,创建一个包含三个字典的字典:
myfamily = { "child1" : { "name" : "Emil", "year" : 2004 }, "child2" : { "name" : "Tobias", "year" : 2007 }, "child3" : { "name" : "Linus", "year" : 2011 } }
或者,如果您想将三个字典添加到一个新字典中:
示例,创建三个字典,然后创建一个包含其他三个字典的字典:
child1 = { "name" : "Emil", "year" : 2004 } child2 = { "name" : "Tobias", "year" : 2007 } child3 = { "name" : "Linus", "year" : 2011 } myfamily = { "child1" : child1, "child2" : child2, "child3" : child3 }
要访问嵌套字典中的项,您可以使用字典的名称,从外部字典开始:
示例,打印 child 2 的名称:
print(myfamily["child2"]["name"])
Python 具有一组可在字典上使用的内置方法。
方法 | 描述 |
---|---|
clear() | 从字典中移除所有元素 |
copy() | 返回字典的副本 |
fromkeys() | 返回具有指定键和值的字典 |
get() | 返回指定键的值 |
items() | 返回包含每个键值对的元组的列表 |
keys() | 返回字典的键列表 |
pop() | 移除具有指定键的元素 |
popitem() | 移除最后插入的键值对 |
setdefault() | 返回指定键的值。如果键不存在,则插入具有指定值的键 |
update() | 使用指定的键值对更新字典 |
values() | 返回字典中所有值的列表 |