字典
字典是Python唯一内建的数学映射类型,字典中的值没有特殊的顺序,键可以是数字,字符串,甚至是元组
字典的创建:
字典由键值对构成,字典中键是唯一的,而值不唯一。>>> a_map={"a":1,"b":2,"c":2} >>> a_map["a"]
dict函数来创建字典:
>>> items=[('a','b'),(1,2)] >>> a_map=dict(items) >>> a_map {1: 2, 'a': 'b'}
>>> a_map=dict(a='b',c=12) >>> a_map {'a': 'b', 'c': 12}
基本的字典操作:
(1)>>> len(mapa)返回字典中键值对的个数
(2)>>> mapa['a'] 返回关联到键k上的值
(3)>>> mapa['a']=2 将2关联到键a上(这一点与列表有很大的不同,在列表的索引号中这样不存在的不能直接赋值添加)
(4)>>> del(mapa['a']) 将键‘a’的键值对给删除了
(5)>>> 'b' in mapa 检查键‘b’ 是否在mapa中
字典的格式化字符串
>>> pho={'a':1,'b':2,'c':3}
>>> "diug is %(a)s" % pho
'diug is 1'
后面的那个s应该是说明那个是字符串的意思。
字典方法:
(1)clear() >>> pho.clear() >>> pho {} 清空字典
(2)copy
浅复制(值没有被复制,替换时原始的字典不变,而修改时如移除值时,原始的字典也会跟着改变)和深度复制() from copy import deepcopy
(3)fromkeys
使用给定的键创建新字典,默认值为‘none’
(4)get
更宽松的访问字典项的方法 >>> pho.get('a')
(5)has_keys
(6)items 和 iteritems 前者将所有的字典项以列表的形式返回,后者将返回迭代器对象
(7)keys和iterkeys 前者将字典中的键以列表形式返回,后者返回迭代器对象
(8)pop >>> pho.pop('a') 获得相应的给定键的值,并将键值对移除
(9)popitem 弹出随机的项
(10)setdefalt 类似于get 在字典中不含给定键的情况下设定相应的键值
(11)update d.update(s) 采用s来更新d,提供的字典项会被添加到新的字典中,其中相同的会被覆盖
(12)values 和 itervalues 以列表形式返回字典中的值