参考:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/0013868193482529754158abf734c00bba97c87f89a263b000
#################################################################
dict:Python内置字典,dict全称为dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度
dict={'yi':11, 'er':12, 'san':13}
dict赋值后,只能通过相应的键来查找值,无法使用数字下标,键不存在也会报错
可以通过相应的键取值,赋值
也可以通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:
dict.get('yi') #自己指定的值 dict.get('yi', 1234)
help(dict.get)
#########################################################
dic={} #变量dic是一个字典类型 for i in range(10): dic[i] = dic.get(i, 0)+i #若键i不存在,则初始化值为0
#########################################################3333
参数:
k:要搜索的键
d:默认为空,返回该键不存在的情况下的默认值
dict.pop('yi')
dict的key必须是不可变对象,字符串/整数等都是不可变对象,list是可变的对象,不能作为key
help(dict)
共有四种方法
一些常用的方法:
__contains__(...) D.__contains__(k) -> True if D has a key k, else False
类似函数:
has_key(...) D.has_key(k) ->True if D has a key k, else False #如果字典D有键k,则返回True,否则False
items(...) D.items() ->list of D's (key, value) pairs, as 2-tuples #返回包含D的键值对的列表list,list中的元素为含有2个数据的元组
iteritems(...) D.iteritems() ->an iterator over the (key, value) items of D #返回一个可迭代对象,每一个元素是一个键值对(key, value)
iterkeys(...) D.iterkeys() -> an iterator over the keys of D #返回一个可迭代对象,每一个元素是字典D的一个键
itervalues(...) D.itervalues -> an iterator over the values of D #返回一个可迭代对象,每一个元素是字典D的一个值
D.keys() #返回键的列表 D.values() #返回值的列表