码迷,mamicode.com
首页 > 编程语言 > 详细

Python:dict学习笔记

时间:2016-06-02 16:35:28      阅读:373      评论:0      收藏:0      [点我收藏+]

标签:

dict全称dictionary,使用键-值(key-value)存储,有极快的查找速度。

以下整理几种常用的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

获取键、值

>>> a_dict.keys()
[1, 2, 3]    #结果为list
>>> a_dict.values()
["{11:‘a‘,12:‘b‘}", 2B, 3C]
>>> a_dict.items()
[(1, "{11:‘a‘,12:‘b‘}"), (2, 2B), (3, 3C)]  #结果为list,list里面的元素是元组
>>> for key in a_dict:
...     print (key)
... 
1
2
3
>>> for value in a_dict.values():
...     print(value)
... 
{11:a,12:b}
2B
3C
>>> for key in  a_dict:
...     print a_dict[key]
... 
{11:a,12:b}
2B
3C
>>> 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
>>> a_dict.get(1)
"{11:‘a‘,12:‘b‘}"

删除

>>> 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}

排序

>>> print sorted(a_dict.items(),key=lambda d:d[0])
[(1, "{11:‘a‘,12:‘b‘}"), (2, 2B), (3, 3C)]   #按照key排序
>>> print sorted(a_dict.items(),key=lambda d:d[1])
[(2, 2B), (3, 3C), (1, "{11:‘a‘,12:‘b‘}")]   #按照value排序

 

后续使用中,再补充..

Python:dict学习笔记

标签:

原文地址:http://www.cnblogs.com/lilip/p/5553361.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!