字典是Python里唯一的映射类型。字典是可变的、无序的、大小可变的键值映射,有时候也称为散列表或关联数组。

例子在下面:

dic = {"apple":2, "orange":1}    #定义一个字典
>>> dic.copy()    #复制字典
{'orange': 1, 'apple': 2}
>>> dic["banana"] = 5    #增加一项
>>> dic.items()    #获得字典中成员的列表
[('orange', 1), ('apple', 2), ('banana', 5)]
>>> dic.pop("apple", 3)    #删除“apple”,如果没有“apple”,则返回3
3
>>> dic
{'orange': 1, 'banana': 5}
>>> dic.keys()    #获得键的列表
['orange', 'banana']
>>> dic.values()    #获得值得列表
[1, 5]
>>> dic.update({"banana":3})    #更新“banana”的值
>>> dic
{'orange': 1, 'banana': 3}
>>> dic.update({"apple":2})      #更新“apple”的值,如果没有,则添加
>>> dic
{'orange': 1, 'apple': 2, 'banana': 3}
>>> dic["orange"]      #通过键获取值
1
>>> dic.clear()     #清空字典

>>> dic
{}

再看一个列子:

#创建一个初始字典,它包含有一个字符串和一个整数。他们的键都是字符串。

>>> book = {"title":"Python web development", "year":2008}

#显示这个对象。
>>> book
{'year': 2008, 'title': 'Python web development'}

#检查字典是否含有某个键,为真
>>> "year" in book
True

#检查字典是否含有某个键,为假
>>> "pub" in book
False

#使用get方法获取给定键的值(在这里获取的是默认值)
>>> book.get("pub", "N/A")
'N/A'

#加入一个新的键-值对
>>> book["pub"] = "Addison Wesley"

#再次使用get方法,不过这次成功的获取了值
>>> book.get("pub", "N/A")
'Addison Wesley'

#迭代整个字典并显示每一对键-值
>>> for key in book:
 print key, ":", book[key]

year : 2008
pub : Addison Wesley
title : Python web development

字典中常用的方法:

dic.clear():清空字典

dic.copy():复制字典

dic.get(k):获得键k的值

dic.has_key(k):是否包含键k

dic.items():获得由键和值组成的列表

dic.keys():获得键的列表

dic.pop(k):删除键k

dic.update():更新成员(用另一个字典更新字典)

dic.values():获得值的列表

Python: 字典的基本操作的更多相关文章

  1. Python 字典(Dictionary) 基本操作

    Python字典是一种可变容器模型,可存储任意类型对象:如字符串.数字.元组等.它以键值对(key-value)的形式存在,因此相当于Hashmap在python中的实现. §1. 创建字典  字典由 ...

  2. python字典的基本操作

    字典的基本方法 什么是字典: 字典是一种 key - value的数据类型,听alex说就像我们上学用的字典,通过笔划,字母来查找对饮页面的详细内容. 语法: id_dict = { 'stu1101 ...

  3. python字典的基本操作,以及可变数据类型和不可变数据类型的区分

    字典:采用键值对存储数据的数据类型,字典的键必须是不可变的数据类型 补充: 不可变(可哈希)数据类型:str,bool,int,tuple 可变(不可哈希)数据类型:list,  dict, set ...

  4. Python 字典方法

    访问字典的值 字典中的 键/值 实际上就是一种映射关系,只要知道了 “键”,就肯定知道 “值”. >>> my_dict = dict(name = 'zhangsan',other ...

  5. Python字典和集合

    Python字典操作与遍历: 1.http://www.cnblogs.com/rubylouvre/archive/2011/06/19/2084739.html 2.http://5iqiong. ...

  6. python 字典排序 关于sort()、reversed()、sorted()

    一.Python的排序 1.reversed() 这个很好理解,reversed英文意思就是:adj. 颠倒的:相反的:(判决等)撤销的 print list(reversed(['dream','a ...

  7. python字典中的元素类型

    python字典默认的是string item={"browser " : 'webdriver.irefox()', 'url' : 'http://xxx.com'} 如果这样 ...

  8. python字典copy()方法

    python 字典的copy()方法表面看就是深copy啊,明显独立 d = {'a':1, 'b':2} c = d.copy() print('d=%s c=%s' % (d, c)) Code1 ...

  9. python 字典实现类似c的switch case

    #python 字典实现类似c的switch def print_hi(): print('hi') def print_hello(): print('hello') def print_goodb ...

随机推荐

  1. IOS零碎技术整理(2)-隐藏系统Tabbar

    原理就是将tabbar移出显示区 -(void)hideSystemTabBar:(UITabBar*) tabbarcontroller { [UIView beginAnimations:nil ...

  2. NLog配置文件写入数据库中

    NLog配置文件: <target xsi:type="Database" name="database" connectionString=" ...

  3. 黄聪:HtmlAgilityPack中SelectSingleNode的XPath和CSS选择器

    XPath和CSS选择器 原文:http://ejohn.org/blog/xpath-css-selectors 最近,我做了很多工作来实现一个同时支持XPath和CSS 3的解析器,令我惊讶的是: ...

  4. 扩展ValidationAttribute 1

    MVC中经常会用一些服务端对Model的验证. 服务端验证要继承自ValidationAttribute,并重写IsValid虚方法来自定义自己的验证规则. protected override Va ...

  5. AOP的基本概念

    1)aspect(切面):实现了cross-cutting功能,是针对切面的模块.最常见的是logging模块,这样,程序按功能被分为好几层,如果按传统的继承的话,商业模型继承日志模块的话根本没有什么 ...

  6. oracle and 和 or

    源地址:https://zhidao.baidu.com/question/350891282.html (FirstName='Thomas' OR FirstName='William') AND ...

  7. Oracle 游标示例,带异常处理

    Oracle游标示例一则,带异常处理. DECLARE CURSOR c_dl IS SELECT ID, NSRSBH, WSPZXH, ZXYY_DM, HZRQ, SWJG_DM, GXSJ F ...

  8. iOS开发 - OC - duplicate symbol _OBJC / undefind symbol 错误的相关处理

    前言: 作为一个iOS开发,相信大家都会遇到类似于 “duplicate symbol” 的程序报错. 对于很多新手来说,可能会有点手足无措,因为这种类型的报错一般并非是代码的逻辑错误,大部分情况下是 ...

  9. linux中mysql如何设置为开机启动

    开机启动命令 chkconfig mysqld on 查询是否设置为开机启动命令 chkconfig --list mysqld 结果为 mysqld 0:关闭 1:关闭 2:启动 3:启动 4:启动 ...

  10. struts的标签库出现Failed to load or instantiate TagExtraInfo class

    使用struts的标签库出现Failed to load or instantiate TagExtraInfo class 最近在使用struts标签库的时候,在eclipse开发环境中是正常的,放 ...