Chinaunix首页 | 论坛 | 博客
  • 博客访问: 834291
  • 博文数量: 97
  • 博客积分: 3042
  • 博客等级: 中校
  • 技术积分: 1610
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-21 11:48
文章存档

2015年(1)

2014年(3)

2013年(4)

2012年(43)

2011年(44)

2010年(2)

分类: LINUX

2011-11-06 20:28:31

接上节...

python的字典也提供了一些常用的方法,利用这些发放可以提高编写代码的效率。常用的python方法有:

keys()返回字典的key列表

values()返回字典的value列表

get()返回字典的某个value

update()添加字典值到已存在的字典中

setdefault()创建新的元素并设置默认值

 

1keys()和values()方法返回字典的key列表和value列表。演示案例:

dict = {"a":"apple", "b":"banana", "o":"orange"}

#输出key的列表

print dict.keys()

#输出value的列表

print dicr.values()

 

(2)get()方法来获取字典的某个value值,其声明形式如下:

D.get(k)-->D.[key]

get相当于一条if...else...语句,参数k在字典中,字典将返回D.[k];如果参数k不在字典中则返回参数d。下面演示字典中get的使用方法:

dict = {"a":"apple","b":"banana","o":"orange"}

print dict

#由于字典中存在索引"a",所以返回"a"对应的value"apple",输出结果:“apple”

print dict.get("a""apple")

#由于字典中不存在索引"d",所以返回所以返回"grape",输出结果"grape"

print dict.get("d", "grape")

 

(3)update()方法。添加新元素到已经存在的字典中。update把一个字典中的key值和value值全部拷贝到另一个字典中,update相当于一个合并函数,其声明如下:

D.updateE--> None

注意: 某些key在目标字典中已经存在,则更新后的值将覆盖原有的字典值。

下面演示update的使用方法:

dict1= {"a":"apple","b":"banana","o":"orange"}

dict2 = {"c":"grape","d":"pear"}

#dict2中的值复制给dict1

dict1.update(dict2)

print dict1

4setdefault()方法

setdefault可以创建新的元素并设置默认值,声明如下:

D.setdefault(k) --> get(k, d)

如果k对应的值在字典中,setdefault返回getk,d)获得的结果,反之,参数k不在字典中则添加新的元素D[k],并调用get(k,d)返回参数d的值。演示其使用方法:

#创建了一个空字典

dict = {}

#添加了key值为"a",但是value值为 "None"

dict = setdefault("a")

#输出为:{"a":"None"}

print dict

#修改"a"对应的value

dict["a"] = "apple"

dict.setdefault("a","default")

#由于前面已经修改过value值,因此输出为:{"a":"apple"}

print dict

 

阅读(5640) | 评论(1) | 转发(3) |
给主人留下些什么吧!~~

alanland2011-11-09 09:16:25

终于明白setdefault是什么意思了。
update 方法很好啊。