Python3.3.2 官方文档教程---字典
来源:互联网 发布:编程cs 编辑:程序博客网 时间:2024/05/24 06:28
3.5 字典
定义在python中另一种数据类型是字典。其他语言中字典可能被定义为“组合记忆”或“组合数组”。 不像序列能用数字可以索引,在字典中是任何一种不变类型的关键字keys来查询。字符串和数字是常见的关键字。 如果元组中仅仅包含字符串,数组或者重数,那么元组也可以充当关键字。但是如果元组中直接或者间接包含可变的对象,那么元组就不能做关键字。
你不能把列表用作关键字,因为列表在索引赋值,切片赋值以及方法 append()和extend()运用时可以改变本身值。
把字典认为是一对无序的key:value的对,并且关键字在一个字典中是唯一的是对字典非常正确的认识。可以用del方法来删除一对键值对。当你用一个已经存在的键去保存值时,与其相关联的值将会丢弃。用没有存在的关键字去获得值时会出错。
用字典中的方法list(d.keys())就可以获得包含字典中所有的关键字的列表,列表中的关键字是无序的,如果你想要对关键字进行排序,可以用方法sorted(d.keys()).可以用in 关键字来检查单个关键字是否在字典中。
如下是运用字典的一个简单例子:
>>> tel = {’jack’: 4098, ’sape’: 4139}
>>> tel[’guido’] = 4127
>>> tel
{’sape’: 4139, ’guido’: 4127, ’jack’: 4098}
>>> tel[’jack’]
4098
>>> del tel[’sape’]
>>> tel[’irv’] = 4127
>>> tel
{’guido’: 4127, ’irv’: 4127, ’jack’: 4098}
>>> list(tel.keys())
[’irv’, ’guido’, ’jack’]
>>> sorted(tel.keys())
[’guido’, ’irv’, ’jack’]
>>> ’guido’ in tel
True
>>> ’jack’ not in tel
False
在字典中可以用dict()构造方法直接直接从包含key-vlaue的序列中定义一个字典。
>>> dict([(’sape’, 4139), (’guido’, 4127), (’jack’, 4098)])
{’sape’: 4139, ’jack’: 4098, ’guido’: 4127}
此外,字典利用复合表达式从随机的key和value的表达式中来创建字典。
>>> {x: x**2 for x in (2, 4, 6)}
{2: 4, 4: 16, 6: 36}
当关键字是简单的字符串时,可以用关键字参数直接指定对象,这样有时会更加的容易。
>>> dict(sape=4139, guido=4127, jack=4098)
{’sape’: 4139, ’jack’: 4098, ’guido’: 4127}
- Python3.3.2 官方文档教程---字典
- Python3.3.2 官方文档教程---遍历技巧
- Python3.3.2 官方文档教程---深入条件控制
- Python3.2官方文档教程--数字
- Python3.2官方文档教程--字符串
- Python3.2官方文档教程- 列表
- Python3.2 官方文档教程---编码风格
- Python3.2 官方文档教程--列表
- Python3.2官方文档教程---Set集合
- python3.2官方文档教程--模块
- Python3.2官方文档教程--深入模块
- Python3.2官方文档教程--包
- Python3.2官方文档教程---格式化输出
- 格式化输出Python3.2官方文档教程
- Python3.2官方文档教程--方法定义--关键字参数
- Python3.2官方文档教程--其余参数形式
- Python3.2官方文档教程---元组与序列
- python3.2.3官方文档翻译
- 本地socket unix domain socket
- 赋值操作符和拷贝构造函数
- 黑马程序员____交通灯系统
- C语言结构体(struct)常见使用方法
- union的用法
- Python3.3.2 官方文档教程---字典
- 有关Shell的一点点了解
- Spark大师之路:Spark的配置系统
- HTML Iframes & Responsive Web Design
- Android网络编程之Socket&Http详解
- ceshi
- 【LeetCode】Reverse Words in a String
- 黑马程序员—Java集合框架(Set、HashSet、TreeSet)
- 谷歌android CTS认证