字典概述(Hash或关系数组)
字典是Python的唯一映射类型,把字或单词称为'键',其对应的含义称为'值'
字典的标志性符号就是大括号({}),大括号内键有引号,如{'f':12,'t':11}
字典由多个键值对构成.每一个键值对称为项
字典不同于序列,在于字典讲究映射,不讲究顺序
字典的键独一无二,而值可以为任意类型,但必须是不可变的(字符串,数,和元组)
1.创建和访问字典
1)声明空字典
>>>empty = {}
>>>empty
{}
>>>type(empty)
<class 'dict'>
2)dict创建字典
>>>dict1 = dict((('F',70),('i',105),('h',104)))
>>>dict1
{'F':70,'h':104,'i':105}
上例多个括号因为dict()的参数只可以是一个序列,所以打包成一个元组序列
>>>dict1 = dict(F=70,i=105,h=104) #键不要加引号
>>>dict1
{'F':70,'h':104,'i':105}
3)字典赋值
直接给字典的值赋值,若已经存在,则修改键对应的值,否则,创建新的键并赋值
>>>dict1
{'F':70,'h':104,'i':105}
>>>dict1['x'] = 88
>>>dict1
{'F':70,'h':104,'i':105,'x':88}
>>>dict1['x'] = 120
>>>dict1
{'F':70,'h':104,'i':105,'x':120}
4)五种等效的字典创建方法
>>>a = dict(one=1,two=2)
>>>b = {'one':1,'two':2,'three':3}
>>>c = dict(zip(['one','two'],[1,2]))
>>>d = dict([('one',1),('two',2)]) #可包装成不同的序列类型
>>>e = dict({'one':1,'two':2})
>>>a == b == c == d == e
True
书海拾荒
字典是Python的唯一映射类型.映射类型区别于序列类型,序列类型以数组形式保存,通过索引值访问,索引值与对应位置存储的数据无关系.