文章目录
1、字典的简介
前面介绍过了列表、元组,字典也比较类似,也是python中比较独特的一种数据结构。
那么字典是什么呢,其实就和我们使用的英语字典差不多,根据英文找到中文解释。注意,这里只能查英语单词,不能根据中文查英文,也不是不能,比较费事一点而已。
字典是一种新的数据结构成为映射,有以下特点:
- 查询数据性能好,存储数据性能略差。
- 每一个元素有一个唯一的名字,成为键(key)
- 键不能重复,否则后面的会覆盖前面的
2、字典的创建
2.1 空字典的创建
In [56]: dic={
}
In [57]: dic??
Type: dict
String form: {
}
Length: 0
Docstring:
dict() -> new empty dictionary
dict(mapping) -> new dictionary initialized from a mapping object's
(key, value) pairs
dict(iterable) -> new dictionary initialized as if via:
d = {
}
for k, v in iterable:
d[k] = v
dict(**kwargs) -> new dictionary initialized with the name=value pairs
in the keyword argument list. For example: dict(one=1, two=2)
2.2 用dict函数创建
- 第一种方式
In [61]: d=dict(name='lisa',gender='female')
In [62]: d
Out[62]: {
'name': 'lisa', 'gender': 'female'}
- 第二种方式
In [64]: d=dict([('name','lisa'),('gender','female')])
In [65]: d
Out[65]: {
'name': 'lisa', 'gender': 'female'}
上面括号中的那一段叫做双值子序列,其实就是相当于把一个特定格式的列表转换成了字典。我们使用这种方法同样可以把两个列表按照对应位置转换成字典,这个将在下文介绍。
3、字典的取值
可以直接通过键来取出值。比如我们在score这个字典中存储了一个班级同学的成绩,可以通过名字来取出他的成绩。
In [66]: score={
'jerry':100,'lisa':100,'xiao':99,'amy':