加入收藏 | 设为首页 | 会员中心 | 我要投稿 | RSS
您当前的位置:首页 > 教程文章 > Python开发

Python中字典的用法

时间:2014-06-11 10:00:35  来源:  作者:

字典是python中唯一的映射类型(哈希表),字典对象是可变的,但是字典的键必须使用不可变对象,并且一个字典中可以使用不同类型的键值。

keys()或者values()返回键列表或者值列表,items()返回包含键值对的元组。

 

1、创建字典:

(1){}

(2)使用工厂方法dict()

例:fdict=dict(['x',1],['y',2])

(3)内建方法:fromkeys(),字典中的元素具有相同的值,默认为None

例:ddict={}.fromkeys(('x','y'),-1)

 

2、访问字典中的值:

(1)直接使用key访问:key不存在会报错,可以使用had_key()或者in和not in判断,但是has_key()方法即将废弃。

(2)循环遍历:

例:for key in dict1.keys():

使用迭代器:for key in dict1:

 

3、更新和删除:

(1)直接用键值访问更新;内建的update()方法可以将整个字典的内容拷贝到另一个字典中。

(2)del dict1['a'] 删除字典中键值为a的元素

dict1.pop('a') 删除并且返回键为'a'的元素

dict1.cleat() 删除字典所有元素

del dict1 删除整个字典

 

4、可用于字典的操作符:除了拼接和重复操作外,其它标准类型操作符都支持,比较操作符的逻辑与序列相同。

 

5、字典相关的内建函数:

(1)type(),str(),cmp()(cmp很少用于字典的比较,比较依次是字典的大小、键、值)。

(2)工厂函数dict():

例如:dict(zip('x','y'),(1,2)) 或者dict(x=1, y=2)

{'y':2, 'x':1}

使用字典生成字典比用copy慢,因此这种情况下推荐使用copy()。

(3)len(),hash()(用于判断某个对象是否可以做一个字典的键,非哈希类型报TypeError错误)。

(4)dict.clear():删除字典中的所有元素

dict.fromkeys(seq,val=None):以seq中的元素为键创建并返回一个字典,val为制定的默认值。

dict.get(key, default=None):返回key的value,如果该键不存在返回default指定的值。

dict.has_key(key):判断字典中是否存在key,建议使用in和not in代替。

dict.items():返回键值对元组的列表。

dict.keys():返回字典中键的列表。

dict.iter*():iteritems(),iterkeys(),itervalues()返回迭代子而不是列表。

dict.pop(key[,default]):同get(),区别是若key存在,删除并返回dict[key],若不存在切default未指定值,抛出KeyError异常。

dict.setdefault(key,default=None):同set(),若key存在则返回其value,若key不存在,则dict[key]=default。

dict.update(dict2):将dict2中的键值对添加到字典dict中,如果有重复覆盖,原字典不存在的条目添加进。

dict.values():返回字典中所有值的列表。

 

6、字典的键:必须是可哈希的不可变类型(例如列表和字典就不能作为键)

来顶一下
返回首页
返回首页
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
推荐资讯
在CentOS下搭建Android 开发环境
在CentOS下搭建Androi
轻松搭建属于自己的Ubuntu发行版
轻松搭建属于自己的Ub
利用SUSE Studio 打造自己的个性化Linux发行版
利用SUSE Studio 打造
那些采用PHP技术的IT大企业
那些采用PHP技术的IT大
相关文章
    无相关信息
栏目更新
栏目热门