您的位置:首页 > 编程语言 > Python开发

python的【字典dict】:创建、访问、更新、删除;查看键、值、键值对;遍历;排序

2017-02-04 12:03 771 查看
http://blog.csdn.net/mmc2015/article/details/50777349

 


python的【字典dict】:创建、访问、更新、删除;查看键、值、键值对;遍历;排序

标签: python的字典dict创建访问更新删除查看键值键值对遍历排序
2016-03-02 09:46 1471人阅读 评论(0) 收藏 举报


 分类:

Python和Cython(11) 


版权声明:本文为博主原创文章,未经博主允许不得转载。

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ;

字典值可以没有限制地取任何Python对象,既可以是标准的对象,也可以是用户定义的;但键不行,如果同一个键被赋值两次,后一个值会被记住。

值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组(列表这样的可变类型不能作为键)。

创建、访问:

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
dict2 = {  }; //空字典
print "dict['Name']: ", dict['Name'];
print "dict['Age']: ", dict['Age'];


字典中包含列表:dict={'yangrong':['23','IT'],"xiaohei":['22','dota']}

字典中包含字典:dict={'yangrong':{"age":"23","job":"IT"},"xiaohei":{"'age':'22','job':'dota'"}}

修改、添加:

dict['Age'] = 8; # update existing entry
dict['School'] = "DPS School"; # Add new entry
删除:

del dict['Name']; # 删除键是'Name'的条目
dict.clear();     # 清空词典所有条目
del dict ;        # 删除词典


查看是否包含特定key:
dict.has_key(k)
如果键在字典dict里返回true,否则返回false
查看所有键、值、(键,值)对:dict.keys()、dict.values()、dict.items();返回值的类型为列表

遍历:

for d,x in dict.items():

    print "key:"+d+",value:"+x

for k in dict.keys():

    print "key:"+k+",value:"+dict[k]

排序:

# 按照key进行排序 
print sorted(dict1.items(), key=lambda d: d[0]) 

或:

sorted(d.items(), lambda x, y: cmp(x[0], y[0])), 或反序: 

sorted(d.items(), lambda x, y: cmp(x[0], y[0]), reverse=True) 
# 按照value进行排序 
print sorted(dict1.items(), key=lambda d: d[1]) 

或:

sorted(d.items(), lambda x, y: cmp(x[1], y[1])), 或反序: 

sorted(d.items(), lambda x, y: cmp(x[1], y[1]), reverse=True) 

list:

按距离差访问元素

顺序访问,速度慢

存储空间要求小

dict:

按索引访问元素

需要大空间,但访问很快

set:

元素不可重复

其它和dict基本类似

|、&、-、^,分别是:并、交、差、逆差
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: