目录
一.字典
1.字典的介绍
字典是“键值对”的无序可变序列,字典中的每个元素都是一个“键值对”,包含:“键 对象”和“值对象”。可以通过“键对象”实现快速获取、删除、更新对应的“值对象”。
2.字典的创建
-
通过{}和dict{}来创建字典
a={"name":"林海馨","age":18,"sex":"女"}
>>> a
{'name': '林海馨', 'age': 18, 'sex': '女'}
b=dict(name="任国亮",age="20",sex="男")
>>> b
{'name': '任国亮', 'age': '20', 'sex': '男'}
注意:使用{}时使用:进行定义,使用dict时使用=进行定义
- 通过 zip()创建字典对象,将两个元组对象进行打包成为一个字典对象
>>> c=["林","海","馨"]
>>> d=["真","好","看"]
>>> e=zip(c,d)
>>> e
<zip object at 0x03ACD5E8>
>>> dict(e)
{'林': '真', '海': '好', '馨': '看'}
>>>
注意:dict可以使任何对象转换为字典对象 ,但是要遵循字典对象的规则,并不是简单的拼接。
- 通过 fromkeys 创建值为空的字典
>>> f=dict.fromkeys(["name","age","sex"])
>>> f
{'name': None, 'age': None, 'sex': None}
>>>
3.字典元素的访问
- 通过 [键] 获得“值”。若键不存在,则抛出异常。
>>> a={"name":"林海馨","age":"18","sex":"女"}
>>> a
{'name': '林海馨', 'age': '18', 'sex': '女'}
>>> a.name[]
SyntaxError: invalid syntax
>>> a[name]
Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
a[name]
NameError: name 'name' is not defined
>>> a["name"]
'林海馨'
>>> a["age"]
'18'
>>> a["job"]
Traceback (most recent call last):
File "<pyshell#6>", line 1, in <module>
a["job"]
KeyError: 'job'
>>>
注意:字典中的键都需要加引号使用。
- 通过 get()方法获得“值”
通过get()获取值,若键 不存在则返回none,并且也可以自己设置返回值,一般建议使用get()来获取字典中的值
a={"name":"林海馨","age":"18","sex":"女"}
>>> a.get("name")
'林海馨'
>>> a.get("sex")
'女'
>>> a.get("job")
>>> a.get("job","产品经理")
'产品经理'
- 列出所有的键值对:a.items()
- 列出所有的键,列出所有的值
>>> a.keys()
dict_keys(['name', 'age', 'sex'])
>>> a.values()
dict_values(['林海馨', '18', '女'])
>>>
- len() 键值对的个数
- 检测一个“键”是否在字典中
4.字典元素添加、修改、删除
- 给字典新增键值对,如果没有则新增,如果有则覆盖原有的值,使用[ ]进行新增操作
a={"name":"林海馨","age":&