字典详解
定义:
>>> into ={
"name":"lumengxiang",
"age":"19",
}
>>> into
{'name': 'lumengxiang', 'age': '19'}
像这样的一个key后面可以对应多个value值,key与value之间用:,key与key之间用逗号隔开。
特点:
1·key-value结构
2·key必须为不看可变数据类型,必须唯一。
3·一个key可对应多个value值。
4·没有顺序。
5·查询速度极快
字典的创建
字典的创建的常用几种类型
>>> into= {
"name":"lumengxiang",
"age":"19"
}
>>> into
{'name': 'lumengxiang', 'age': '19'}
>>> into=dict(name='lumengxiang',age=19)
>>> into
{'name': 'lumengxiang', 'age': 19}
>>> into=dict({"name":"lumengxiang","age":"19"})
>>> into
{'name': 'lumengxiang', 'age': '19'}
増
字典的增加例:name[key]=value
即像这样
>>> into
{'name': 'lumengxiang', 'age': '19'}
>>> into["height"]=180
>>> into
{'name': 'lumengxiang', 'age': '19', 'height': 180}
删除
其实字典的删除,跟列表很相似
>>> into
{'name': 'lumengxiang', 'age': '19', 'height': 180}
>>> into.pop("height")#删除指定的key并返回删除的key对应的value值
180
>>> into
{'name': 'lumengxiang', 'age': '19'}
>>> into.popitem()#任意删除一个key-value对,并返回
('age', '19')
>>> into
{'name': 'lumengxiang'}
>>> del into["name"]#删除
>>> into
{}
>>> into=dict({"name":"lumengxiang","age":"19"})
>>> into.clear()#清空字典
>>> into
{}
修改
修改最常见的方法就是找到对应的key然后直接赋予新的value就行了。
>>> into=dict({"name":"lumengxiang","age":"19"})
>>> into
{'name': 'lumengxiang', 'age': '19'}
>>> into["age"]=20
>>> into
{'name': 'lumengxiang', 'age': 20}
>>> name={"height":"180"}
>>> into.update(name)#将name添加到字典into中
>>> into
{'name': 'lumengxiang', 'age': 20, 'height': '180'}
查找
查找时,如果字典中没有key,则会报错
>>> into
{'name': 'lumengxiang', 'age': 20, 'height': '180'}
>>> into["name"]
'lumengxiang'
>>> into["leng"]
Traceback (most recent call last):
File "<pyshell#49>", line 1, in <module>
into["leng"]
KeyError: 'leng'
还有一种通过get去查找,如果字典中没有key则我们可以指定它的返回值
>>> into.get("name")
'lumengxiang'
>>> into.get("length")
>>> into.get("length",None)
>>> into.get("length",1)
1
>>> into
{'name': 'lumengxiang', 'age': 20, 'height': '180'}
>>> into.keys()#返回字典中所有的key列表
dict_keys(['name', 'age', 'height'])
>>> into.values()#返回字典中所有的value列表
dict_values(['lumengxiang', 20, '180'])
>>> into.items()#返回字典中所有的key-value对
dict_items([('name', 'lumengxiang'), ('age', 20), ('height', '180')])
循环
>>> for i in into.keys():
print(i)
name
age
height
>>> for i in into:
print(i,into[i])
name lumengxiang
age 20
height 180
求长度
>>> len(into)
3
这样我们字典的知识就了解的差不多了