Python:dict用法
dict全称dictionary,使用键-值(key-value)存储,有极快的查找速度。
以下整理几种常用的dict用法
定义
空dict
>>> dict={}
普通dict
>>> dict={'adele':'hello','taylor':''}
>>> dict
{'taylor': '', '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')
'' #根据键值删除,并返回值
>>> 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':''}
>>> a_dict.update(add_dict)
>>> a_dict
{1: "{11:'a',12:'b'}", 2: '2B', 3: '3C', 'adele': 'hello', 'taylor': ''}
排序
按照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:dict用法的更多相关文章
- Python Dict用法
Operation Result len(a) the number of items in a 得到字典中元素的个数 a[k] the item of a with key k 取得键K所对应的值 ...
- Python高级用法总结
Python很棒,它有很多高级用法值得细细思索,学习使用.本文将根据日常使用,总结介绍Python的一组高级特性,包括:列表推导式.迭代器和生成器.装饰器. 列表推导(list comprehensi ...
- Python dict operation introduce
字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示: d = ...
- python argparse用法总结
转:python argparse用法总结 1. argparse介绍 argparse是python的一个命令行解析包,非常适合用来编写可读性非常好的程序. 2. 基本用法 prog.py是我在li ...
- Python dict(或对象)与json之间的互相转化
Python dict(或对象)与json之间的互相转化 原文转载自 1.JSON:JavaScript 对象表示法,是轻量级的文本数据交换格式,独立于语言,平台 2.JSON 语法规则 数据在名称/ ...
- Anaconda下载及安装及查看安装的Python库用法
Anaconda下载及安装及查看安装的Python库用法 Anaconda 是一个用于科学计算的 Python 发行版,提供了包管理与环境管理的功能.Anaconda 利用 conda 来进行 pac ...
- python enumerate用法总结【转】
enumerate()说明 enumerate()是python的内置函数 enumerate在字典上是枚举.列举的意思 对于一个可迭代的(iterable)/可遍历的对象(如列表.字符串),enum ...
- python & dict & switch
python & dict & switch python 中是没用switch语句的,这应该是体现python大道至简的思想,python中一般多用字典来代替switch来实现. # ...
- Python dict() 函数
Python dict() 函数 Python 内置函数 描述 dict() 函数用于创建一个字典. 语法 dict 语法: class dict(**kwarg) class dict(mappi ...
随机推荐
- 一个ubuntu phper的自我修养(lamp)
lamp环境搭建出坑记 lamp虽然大家都懂,但是还是要解释一下先,要做的是一个狭义的解释,以对应我们即将搭建的环境. L指linux(ubuntu). A指apache(apache2). M指my ...
- JavaScript使用技巧(1)——JS常用的函数
1.字符串对象函数和属性 函数: charAt():返回在指定位置的字符. charCodeAt():返回在指定的位置的字符的 Unicode 编码. concat():连接字符串. indexOf( ...
- javascript 变量提前
1. 未声明变量时,结果是我们预期的结果,报错这个变量没有定义. (function() { // 报错:variable is not defined console.log(variable); ...
- HTML5 LocalStorage 本地存储原理详解
首先自然是检测浏览器是否支持本地存储.在HTML5中,本地存储是一个window的属性,包括localStorage和sessionStorage,从名字应该可以很清楚的辨认二者的区别,前者是一直存在 ...
- UVA 11520 填充正方形
https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...
- Spark学习(三) -- SparkContext初始化
标签(空格分隔): Spark 本篇博客以WordCount为例说明Spark Job的提交和运行,包括Spark Application初始化.DAG依赖性分析.任务的调度和派发.中间计算结果的存储 ...
- MyEclipse10安装Svn插件的几种方法
http://blog.sina.com.cn/s/blog_4f925fc30102e9xe.html 方法一:直接解压 下载SVN插件:site-1.6.18.zip 解压后将其全部文件拷贝至:D ...
- solrconfig.xml解析
solrconfig.xml配置文件主要定义了SOLR的一些处理规则,包括索引数据的存放位置,更新,删除,查询的一些规则配置.下面将对solrconfig进行详细描述:1 <luceneMatc ...
- iOS textField输入金额的限制,小数点前9位,后面两位
iOS textField输入金额的限制,小数点前9位,后面两位,如果不加小数点,最大位数是9位,加上小数点,最大位数是12位,超出最大位数可删除 - (BOOL)textField:(UITextF ...
- 多MAVEN项目部署到tomcat中_之使用DBUG进行单步调试
1.改成你想localhost:8080默认进入的目录 这个步骤会造成 code\.settings\org.eclipse.wst.common.component 文件的更改<propert ...