字典(Dictionary)
字典是一个无序、可变和有索引的集合。在 Python 中,字典用花括号编写,拥有键和值。
实例
创建并打印字典:
thisdict = {"brand": "Ford","model": "Mustang","year": 1964}print(thisdict)
访问项目
实例
获取 “model” 键的值:
x = thisdict["model"]
实例
获取 “model” 键的值:
x = thisdict.get("model")
更改值
实例
把 “year” 改为 2019:
thisdict = {"brand": "Ford","model": "Mustang","year": 1964}thisdict["year"] = 2018
遍历字典
您可以使用 for 循环遍历字典。
循环遍历字典时,返回值是字典的键,但也有返回值的方法。
实例
逐个打印字典中的所有键名:
for x in thisdict:print(x)
实例
逐个打印字典中的所有值:
for x in thisdict:print(thisdict[x])
实例
您还可以使用 values() 函数返回字典的值:
for x in thisdict.values():print(x)
实例
通过使用 items() 函数遍历键和值:
for x, y in thisdict.items():print(x, y)
检查键是否存在
实例
检查字典中是否存在 “model”:
thisdict = {"brand": "Ford","model": "Mustang","year": 1964}if "model" in thisdict:print("Yes, 'model' is one of the keys in the thisdict dictionary")
字典长度
实例
打印字典中的项目数:
print(len(thisdict))
添加项目
实例
thisdict = {"brand": "Ford","model": "Mustang","year": 1964}thisdict["color"] = "red"print(thisdict)
删除项目
实例
pop() 方法删除具有指定键名的项:
thisdict = {"brand": "Ford","model": "Mustang","year": 1964}thisdict.pop("model")print(thisdict)
实例
popitem() 方法删除最后插入的项目(在 3.7 之前的版本中,删除随机项目):
thisdict = {"brand": "Ford","model": "Mustang","year": 1964}thisdict.popitem()print(thisdict)
实例
del 关键字删除具有指定键名的项目:
thisdict = {"brand": "Ford","model": "Mustang","year": 1964}del thisdict["model"]print(thisdict)
实例
del 关键字也可以完全删除字典:
thisdict = {"brand": "Ford","model": "Mustang","year": 1964}del thisdictprint(thisdict) #this will cause an error because "thisdict" no longer exists.
实例
clear() 关键字清空字典:
thisdict = {"brand": "Ford","model": "Mustang","year": 1964}thisdict.clear()print(thisdict)
复制字典
您不能通过键入 dict2 = 
dict1 来复制字典,因为:dict2 只是对 dict1 的引用, 而 dict1 中的更改也将自动在 dict2 中进行。
有一些方法可以进行复制,一种方法是使用内建的字典方法 copy()。
实例
使用 copy() 方法来复制字典:
thisdict = {"brand": "Ford","model": "Mustang","year": 1964}mydict = thisdict.copy()print(mydict)
实例
使用 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}
dict() 构造函数
实例
thisdict = dict(brand="Ford", model="Mustang", year=1964)# note that keywords are not string literals# note the use of equals rather than colon for the assignmentprint(thisdict)
字典方法
Python 提供一组可以在字典上使用的内建方法。
| 方法 | 描述 | 
|---|---|
| clear() | 删除字典中的所有元素 | 
| copy() | 返回字典的副本 | 
| fromkeys() | 返回拥有指定键和值的字典 | 
| get() | 返回指定键的值 | 
| items() | 返回包含每个键值对的元组的列表 | 
| keys() | 返回包含字典键的列表 | 
| pop() | 删除拥有指定键的元素 | 
| popitem() | 删除最后插入的键值对 | 
| setdefault() | 返回指定键的值。如果该键不存在,则插入具有指定值的键。 | 
| update() | 使用指定的键值对字典进行更新 | 
| values() | 返回字典中所有值的列表 | 
