Python:dict用法
2016-06-02 16:11
459 查看
dict全称dictionary,使用键-值(key-value)存储,有极快的查找速度。
以下整理几种常用的dict用法
定义
空dict
>>> dict={}
普通dict
>>> dict={'adele':'hello','taylor':'1989'} >>> dict {'taylor': '1989', 'adele': 'hello'}
嵌套
>>> a_dict={1:"{11:'a',12:'b'}",2:"2B",3:"3C"} >>> a_dict {1: "{11:'a',12:'b'}", 2: '2B', 3: '3C'} >>> a_dict[1][12] 'b'
获取键、值
key&values
>>> a_dict.keys() [1, 2, 3] #结果为list
>>> a_dict.values() ["{11:'a',12:'b'}", '2B', '3C']
items
>>> a_dict.items() [(1, "{11:'a',12:'b'}"), (2, '2B'), (3, '3C')] #结果为list,list里面的元素是元组
for..in
>>> for key in a_dict: ... print (key) ... 1 2 3
>>> for value in a_dict.values(): ... print(value) ... {11:'a',12:'b'} 2B 3C
输出value等价语句
>>> for key in a_dict: ... print a_dict[key] ... {11:'a',12:'b'} 2B 3C
同时输出键、值
两种方法:
1)使用两个变量k,v,完成循环
2)使用一个变量k,通过k求出对应v
>>> for k,v in a_dict.items(): ... print str(k)+":"+str(v) ... 1:{11:'a',12:'b'} 2:2B 3:3C
>>> for k in a_dict: ... print str(k)+":"+str(a_dict[k]) ... 1:{11:'a',12:'b'} 2:2B 3:3C
另一种实现形式
>>> for k in a_dict: ... print "a_dict(%s)="%k,a_dict[k] ... a_dict(1)= {11:'a',12:'b'} a_dict(2)= 2B a_dict(3)= 3C
get
>>> a_dict.get(1) "{11:'a',12:'b'}"
删除
分别使用了三种方法:pop、del和clear
>>> a_dict.pop('taylor') '1989' #根据键值删除,并返回值
>>> del a_dict[1] >>> a_dict {2: '2B', 3: '3C', 'adele': 'hello'}
>>> a_dict.clear() >>> a_dict {}
拷贝
>>> new_dict=a_dict.copy() >>> new_dict {1: "{11:'a',12:'b'}", 2: '2B', 3: '3C'}
合并
>>> add_dict={'adele':'hello','taylor':'1989'} >>> a_dict.update(add_dict) >>> a_dict {1: "{11:'a',12:'b'}", 2: '2B', 3: '3C', 'adele': 'hello', 'taylor': '1989'}
排序
按照key排序
>>> print sorted(a_dict.items(),key=lambda d:d[0]) [(1, "{11:'a',12:'b'}"), (2, '2B'), (3, '3C')]
按照value排序
>>> print sorted(a_dict.items(),key=lambda d:d[1]) [(2, '2B'), (3, '3C'), (1, "{11:'a',12:'b'}")]
后续使用中,再补充..
相关文章推荐
- Python的Django框架中使用SQLAlchemy操作数据库的教程
- python 2.7笔记
- Python菜鸟之路:Python基础-逼格提升利器:装饰器Decorator
- 【Python自动化运维之路Day4】
- Python核心编程(第十三章)--面向对象编程
- 实例解析Python中的__new__特殊方法
- Python Flask Web 第二课 —— 请求-响应循环
- Sublime Text 3 for Python andweb developers配置开发环境
- 详解Python中的__new__、__init__、__call__三个特殊方法
- Windows下Python安装numpy+mkl,Scipy和statsmodels
- Python——目录操作
- Python实现优先级队列结构的方法详解
- Python int与string之间的转化
- Python实现C代码统计工具(四)
- 一步步在SAE 部署自己的python项目
- Python学习路程day18
- Python Selenium
- Python Selenium
- 慕课爬虫实战 爬取百度百科Python词条相关1000个页面数据
- Python学习笔记之Beautiful Soup