Python王者归来
上QQ阅读APP看书,第一时间看更新

9-7 字典常用的函数和方法

9-7-1 len( )

可以列出字典元素的个数。

程序实例ch9_28:列出字典以及字典内的字典元素的个数。

执行结果

9-7-2 fromkeys( )

这是建立字典的一个方法,它的语法格式如下:

     name_dict = dict.fromkeys(seq[, value])# 使用seq序列建立字典

上述会使用seq序列建立字典,序列内容将是字典的,如果没有设定value则用None当字典键的

程序实例ch9_29.py:分别使用列表和元组建立字典。

执行结果

9-7-3 get( )

搜寻字典的键,如果键存在则传回该键的值,如果不存在则传回默认值。

     ret_value = dict.get(key[, default=none])# dict是欲搜寻的字典

key是要搜寻的键,如果找不到key则传回default的值(如果没设就传回None)。

程序实例ch9_30.py:get( )方法的应用。

执行结果

9-7-4 setdefault( )

这个方法基本上与get( )相同,不同之处在于get( )方法不会改变字典内容。使用setdefault( )方法时若所搜寻的不在,会将键-值加入字典,如果有设定默认值则将键:默认值加入字典,如果没有设定默认值则将键:None加入字典。

     ret_value = dict.setdefault(key[, default=none])# dict是欲搜寻的字典

程序实例ch9_31.py:setdefault( )方法,在字典内的应用。

执行结果

程序实例ch9_32.py:setdefault( )方法,不在字典内的应用。

执行结果

9-7-5 pop( )

这个方法可以删除字典元素,它的语法格式如下:

     ret_value = dict.pop(key[, default])# dict是欲删除元素的字典

上述key是要搜寻删除的元素的,找到时就将该元素从字典内删除,同时将删除键的回传。当找不到key时则传回default设定的内容,如果没有设定则传回KeyError。

程序实例ch9_33.py:使用pop( )删除元素,同时元素存在的应用。

执行结果

程序实例ch9_34.py:使用pop( )删除元素,同时元素不存在的应用。

执行结果

习题

1.将程序实例ch9_4.py的输出结果改成一行。

2.重新设计ch9_15.py,将程序设计为可以重新输入元素,直到输入是q键程序才结束。

3.重新设计ch9_24.py,将最后3名小兵改成tag是green、score是10、speed是fast。

4.请参考ch9_26.py,设计5个旅游地点当则是由字典组成,内部包含5个键-值,请自行发挥创意,然后打印出来。