Python 字典
字典(Dictionary)
字典是一个无序、可变和有索引的集合。在 Python 中,字典用花括号编写,拥有键和值。
实例
创建并打印字典:
thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
print(thisdict)
访问项目
您可以通过在方括号内引用其键名来访问字典的项目:
实例
获取 "model" 键的值:
x = thisdict["model"]
还有一个名为get()的方法会给你相同的结果:
实例
获取 "model" 键的值:
x = thisdict.get("model")更改值
您可以通过引用其键名来更改特定项的值:
实例
把 "year" 改为 2019:
thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict["year"] = 2019
遍历字典
您可以使用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)
检查键是否存在
要确定字典中是否存在指定的键,请使用in关键字:
实例
检查字典中是否存在 "model":
thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
if "model" in thisdict:
  print("Yes, 'model' is one of the keys in the thisdict dictionary")
添加项目
通过使用新的索引键并为其赋值,可以将项目添加到字典中:
实例
thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict["color"] = "red"
print(thisdict)
删除项目
有几种方法可以从字典中删除项目:
实例
pop() 方法删除具有指定键名的项:
thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict.pop("model")
print(thisdict)
实例
popitem() 方法删除最后插入的项目(在 3.7 之前的版本中,删除随机项目):
thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict.popitem()
print(thisdict)
实例
del关键字删除具有指定键名的项目:
thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
del thisdict["model"]
print(thisdict)
实例
del关键字也可以完全删除字典:
thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
del thisdict
print(thisdict) #this 会导致错误,因为 "thisdict" 不再存在。
实例
clear()关键字清空字典:
thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict.clear()
print(thisdict)
复制字典
您不能通过键入dict2 = dict1来复制字典,因为:dict2只是对dict1的引用,而dict1中的更改也将自动在dict2中进行。
有一些方法可以进行复制,一种方法是使用内建的字典方法copy()。
实例
使用copy()方法来复制字典:
thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
mydict = thisdict.copy()
print(mydict)
制作副本的另一种方法是使用内建方法dict()。
实例
使用dict()方法创建字典的副本:
thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
mydict = dict(thisdict)
print(mydict)
嵌套字典
词典也可以包含许多词典,这被称为嵌套词典。
实例
创建包含三个字典的字典:
myfamily = {
  "child1" : {
    "name" : "Phoebe Adele",
    "year" : 2002
  },
  "child2" : {
    "name" : "Jennifer Katharine",
    "year" : 1996
  },
  "child3" : {
    "name" : "Rory John",
    "year" : 1999
  }
}
或者,如果您想嵌套三个已经作为字典存在的字典:
实例
创建三个字典,然后创建一个包含其他三个字典的字典:
child1 = {
  "name" : "Phoebe Adele",
  "year" : 2002
}
child2 = {
  "name" : "Jennifer Katharine",
  "year" : 1996
}
child3 = {
  "name" : "Rory John",
  "year" : 1999
}
myfamily = {
  "child1" : child1,
  "child2" : child2,
  "child3" : child3
}
dict() 构造函数
也可以使用dict()构造函数创建新的字典:
实例
thisdict = dict(brand="Porsche", model="911", year=1963) # 请注意,关键字不是字符串字面量 # 请注意,使用了等号而不是冒号来赋值 print(thisdict)
