词典

字典

字典是一个无序,可变,有索引的集合
在Python中,字典用花括号编写,键值对表示

thisdict = {
	"name": "xiaobai"
	"age": 23
	"sex": "male"
}
print(thisdict)

访问项目

可以通过方括号的方式访问项目
其本质相当于将键当做索引来访问项目
还可以通过内建方法get()来获取键的值

print(thisdict["name"])
print(thisdict.get("name"))

遍历字典

#遍历字典中的键
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来检查是否存在与字典中
  • 可以通过len()函数确定字典的长度(键值对)作为参数
if "name" in thisdict:
	print("yes")
	
print(len(thisdict))

字典的增删改

#通过方括号的方式对键的值进行更改
thisdict["name"] = "White"
#通过新的键和值来对字典项目进行新增
thisdict["No."] = "15948060069"
#使用内建函数pop()删除指定键的项目
thisdict.pop("No.")
#使用内建函数popitem()删除最后插入的项目(在3.7之前的版本中,删除随机项目)
thisdict.popitem()
#使用del关键字删除指定键的项目
del thisdict["name"]
#使用del完全删除字典
del thisdict
#使用clear()内建函数清空字典
thisdict.clear()

复制字典

与[[列表#复制列表]]相同,字典也有内建方法copy()或构造方法dict()

嵌套字典

字典也可以包含许多字典,这被称为嵌套字典

child1 = {
	"name" : "zhao"
	"year" : 2002
}
child2 = {
	"name" : "li"
	"year" : 2001
}
child3 = {
	"name" : "wang"
	"year" : 2003
}
myfamily = {
	"child1" : child1
	"child2" : child2
	"child3" : child3
}

dict()

thisdict = dict(name="xiaobai", age=23, sex="male")
#请注意,使用构造函数创建字典时,键不再是字符串格式,且不再使用冒号而是等号来赋值