一、字典定义
用大括号{}包裹,以逗号分割每个键值对,键与值之间使用冒号连接,构成(key{values)结构。
键和值可以是任意的数据对象,大多数情况还是以数字和字符串的方式构成
字典是无序的,键在字典中必须是唯一,在字典中取值的方式是以键寻找相对应的值
字典是python中的映射数据类型
字典不支持拼接(concatenation)和重复(repetirion)a={} #定义空字典,没有任何的键和值
print a
a={'a':1,'b':2,'c':3,'d':4} #创建字典,键与值对应,以逗号分割,键与值以冒号连接
print a
a={}.fromkeys(list('abcdef')) #创建字典,使用字典方法,值创建键,值为None,键来自列表的元素
print a
a=dict((['x', 1], ['y', 2])) #使用字典函数创建字典
print a
a=dict(zip(["key1",'key2'],(1,2))) #使用zip方法和dict函数创建字典
print a
执行结果为{}
{'a': 1, 'c': 3, 'b': 2, 'd': 4}
{'a': None, 'c': None, 'b': None, 'e': None, 'd': None, 'f': None}
{'y': 2, 'x': 1}
{'key2': 2, 'key1': 1}
zip([iterable, ...])
zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同。利用*号操作符,可以将list unzip(解压)。>>> a=zip(list('abcdefg'),list('1234567'))
>>> print a
[('a', '1'), ('b', '2'), ('c', '3'), ('d', '4'), ('e', '5'), ('f', '6'), ('g', '7')]
>>> zip(*a)
[('a', 'b', 'c', 'd', 'e', 'f', 'g'), ('1', '2', '3', '4', '5', '6', '7')]
二、字典访问
字典无序的,定义字典的顺序与生成字典的顺序是不一至的
通过字典的键,取得字典键所对应的值>>> a={'a':1,'b':2,'c':{'d':3}} #字典中包含字典
>>> print a
{'a': 1, 'c': {'d': 3}, 'b': 2}
>>> a['a']
1
>>> a['c']
{'d': 3}
>>> a[