Python数据结构3

来源:互联网 发布:编程的艺术 pdf 编辑:程序博客网 时间:2024/05/02 04:40

3.字典

字典由“键-值”对组成,键值对之间用逗号隔开,包含在一对花括号内。字典没有顺序且每个键是唯一的。类似于java中的HashMap类。


3.1字典的创建

1)基本创建方式

dict1 = {'key1':'value1', 'key2':'value2'}

2)使用dict()函数创建字典

user_dict = [(1,'alvin'),(2,'nathan'),(3, 'brian')]dict_user = dict(user_dict)print dict_user'''output----------------{1: 'alvin', 2: 'nathan', 3: 'brian'}'''


dict_person = dict(name='alvin', age=20)print dict_person'''output-----------------{'age': 20, 'name': 'alvin'}'''



3.2字典的基本操作方法


1)添加元素

a)   setdefault(key[,value])

user_dict = {'001':'alvin','002':'nathan','003':'brian'}user_dict.setdefault('004', 'nick')print user_dict'''{'003': 'brian', '002': 'nathan', '001': 'alvin', '004': 'nick'}'''
setdefault()函数如果不设置value,默认为none,如果key已经存在返回已经存在相应的value

b)  dict _name[key] = value

2)删除元素

a)   使用del()函数删除元素

del(dict_name[key])

b) 使用pop()方法删除元素

pop(key[,defaultvalue])#如果存在key,删除并返回相应的值,否则返回defaultvalue

c) 使用del关键字

del dict_name[key]

3)字典的遍历

a)    for...in

for key in user_dict:    print "user_dict[%s]="%key, user_dict[key]

b)   使用items()方法遍历字典

for (key, value) in user_dict.items():    print key,"=>",value

c)使用iteritems()\、iterkeys()和itervalues()方法遍历字典

for (key, value) in zip(user_dict.iterkeys(), user_dict.itervalues()):    print key,"=>",value


3.3字典更多函数方法

方法名方法解释备注clear()清空字典,无返回值 copy()返回一个具有相同键值对的新字典 fromkeys([key1, key2, ...], defaultvalue)使用给定的键建立新字典,返回新字典 get(key)获取指定键对应的值 haskey(key)检查字典是否包含指定的键 popitem()弹出随机的元素 target_dict.update(source_dict)使用新的字典更新目标字典中的值