字典,顾名思义就是我们可以根据某些值来查出我们需要的内容。比如我有一个成语:指鹿为马,我不知道是什么意思我就可以在成语词典中根据“指鹿为马”这个词找出这个成语的详细解释。这里“指鹿为马”就是我们的“键”,而指鹿为马的详细解释意思就是“值”。Python的字典也一样,根据键查到对应的值
一、如何创建字典?
创建列表的时候用“[]”,创建元组时的标志是“,”,而且我们习惯加上小括号。创建字典时我们用“{}”来表示。
比如现在创建一个电话簿:
phonenumbers = {'Alice':'0123','Cecil':'1234','Bob':'2345'.'Beth':'3456'}
字典中每个键和它对应的值用“:”来隔开。
而创建一个空的字典,直接可以用一个不包含任何内容的空花括号:“{}”即可。
二、dict函数:
dict函数的作用,将(键,值)对应的序列转换成字典,例如:
a = [('name','Bob'),('age','18')]
b = dict(a)
此时在IDLE中打印b你会看到什么?
这里要说明的是dict函数并不是真正的函数,而是类似我们以前学过的list,tuple,str一样。
三、字典的基本操作
len(d) 返回 d中(键,值)对的数目
d[k] 返回关联到键k上的值
d[k]=v 将值V关联到键K上
del d[k] 删除键为K的项
好了知道上述知识后,我们来做一个电话本的例子:
。。。。。。(以后再补吧)
四、字典的各种方法
1、clear清楚字典中的所有项,原地操作,无返回值。
2、 copy方法:浅复制——利用copy方法创造的字典的副本,在替换副本字典的值时,原始字典没变化。但是当改变副本字典的值时(删除,增加等)原始字典也会跟着改变!
deepcopy:深复制 :用深复制就不会出现浅复制中的问题
3、fromkeys方法:这个方法可以指定创建一个字典的所有键,默认值统一为none,当然也可以自己定义默认值
语法:
{}.fromkeys(['name','age'],(‘1’))
执行结果:
{'age': ‘1’, 'name': ‘1’}
4、get方法
访问字典没有存在的键时可以返回一个自己设定默认值(可以不设),而不会报错。
a = {'1':'01','2':'02'}
a.get('3','none')
5、has_keys方法:
利用has_keys方法可以检查字典中是否存在某个键。返回布尔值
6、