Python

Dictionary 是 Python 的内置数据类型之一, 它定义了键和值之间一对一的关系 。它是用{}括起来的。每个Dictionary的项的句法为:key:value. Dictionary就象我们熟知的hash表。

>>> d = {'key1':'value1','key2':'value2'}
>>> d
{'key2': 'value2', 'key1': 'value1'}
>>> d['key1']
'value1'
>>> d['key3']
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'key3'

当Key不存在时,会引发一个异常。

Dictionary的相关操作:

>>> d = {'key1':'value1','key2':'value2'}
>>> d['key3'] = 'value3' #新增元素
>>> d['key3'] = 1 #可以是任意类型
>>> del d['key1'] #删除单个元素
>>> d.clear()

Dictionary的key可以是 数字,字符串,元组等不可变类型。

Dictionary元素的顺序并不是按照增加的顺序进行排序的。Dictionary中的元素是没有顺序概念的。

Dictionary的遍历:

>>> d = {'key1':'value1','key2':'value2'}
>>> for key in d.keys():
... print key, d[key]
...
key2 value2
key1 value1
>>> for key in d:
... print key, d[key]
...
key2 value2
key1 value1
>>>

从python2.2开始,可以不必再用keys()方法获取供循环使用的键值列表,可以用迭代器访问,即:只要用字典的名字就可以在for循环内遍历字典

从python2.3开始,调用dict()方法可以接受字典或关键字参数创建字典:

>>> d = dict(x=1,y=2)
>>> d
{'y': 2, 'x': 1}
>>> d2 = d.copy()
>>> d2
{'y': 2, 'x': 1}

dict.clear() removes all elements of dictionary dict

dict.copy() returns a (shallow) copy of dictionary dict

dict.get(key, default=None) for key key, returns value or default if key not in dictionary (note that default's default is None)

dict.has_key(key) returns 1 if key in dictionary dict, 0 otherwise

dict.items() returns a list of dict's (key, value) tuple pairs

dict.keys() returns list of dictionary dict's keys

dict.setdefault(key, default=None) similar to get(), but will set dict[key]=default if key is not already in dict

dict.update(dict2) adds dictionary dict2's key-values pairs to dict

dict.values() returns list of dictionary dict's values

dict.fromkeys(seq,val=None) 创建并返回一个新字典,以seq中的元素做该字典的键,val做字典中所有键对应的初始值

dict.sort( ) 排序

字典解析:

大家熟悉的列表解析:

从python2.7开始,可以用同样的语法创建字典:

>>> d = { x: x % 2 == 0 for x in range(1, 11) }

>>> d

{1: False, 2: True, 3: False, 4: True, 5: False, 6: True, 7: False, 8: True, 9: False, 10: True}

Python基础(3) - 数据类型:5字典类型的更多相关文章

  1. python基础一数据类型之字典

    摘要: python基础一数据类型之一字典,这篇主要讲字典. 1,定义字典 2,字典的基础知识 3,字典的方法 1,定义字典 1,定义1个空字典 dict1 = {} 2,定义字典 dict1 = d ...

  2. Python基础一数据类型之数字类型

    摘要: python基础一中提到了数据类型,这里主要讲解的是数字类型. 数字类型: 1,整型 2,长整型 3,浮点型 4,复数型 1,整型(int) 定义a = 1 通过type函数查看数据类型,整型 ...

  3. Python基础——原生数据类型(字典,列表,元组,字符串)

    字典Dictionary 字典定义了键值对的1对1管理. 1.定义字典 请看下面的栗子,我们先创建了一个具有两个元素的字典,每对都是key:value的形式. 我们能通过key得到value,但是不能 ...

  4. Python基础(3) - 数据类型:2字符串类型

    Python字符串的表示有三种方法: 1.单引号(') >>>a = 'I love python. ' 2.双引号(") >>>a = " I ...

  5. python基础之数据类型和数值类型

    python3的六大数据类型: 1.tuple元组 2.number数字 3.string字符串 4.set集合 5.list列表 6.dictionary字典 其中不可变数据3个:tuple.num ...

  6. Python基础(3) - 数据类型:1数字类型

    Python数据类型 数据类型 是否容器 是否可变 存储方式 数字 否 否 直接 字符串 否 否 直接 列表 是 是 顺序 元组 是 否 顺序 字典 是 是 映射 数字类型 整  型:1,234,0, ...

  7. Python基础(3) - 数据类型:3列表类型

    Python 列表是序列对象,可包含任意的Python数据信息,如字符串.数字.列表.元组等.列表的数据是可变的,我们可通过对象方法对列表中的数据进行增加.修改.删除等操作.列表用[]包括起来的. 列 ...

  8. Python基础:1.数据类型(字典)

    提示:python版本:2.7,windows系统 1.字典(Dictionary) 由Key-Value组成,一个Key只能对应一个Value >>> colors = {'red ...

  9. Python基础(3) - 数据类型:4元组类型

    Python Tuple 是不可变 list. 一旦创建了一个 tuple 就不能以任何方式改变它.Tuple是用()包括起来的. Tuple与List都是按照定义的顺序进行排序的,索引从0开始,与 ...

随机推荐

  1. Android 常用第三方框架总结

    一.导航拦 1. FlycoTabLayout https://github.com/H07000223/FlycoTabLayout    2.CoordinatorTabLayout    htt ...

  2. 求帮忙解决封装jquery图片滚动问题

    今天用jquery封装了点击图片滚动,但是发现在屏幕自适应时,图片停在的位置会随着屏幕大小而错位(我引入了pocketgrid.css响应式文件,但没办法去那边修改onsize事件...),求大神.. ...

  3. RobotFramework做接口自动化(内部接口需要登录token)

    背景: 项目中需要做接口自动化测试,使用robot,有一个收货地址列表的接口直接传参数访问时会返回:{"msg":"缺少参数","code" ...

  4. C#面向对象的三大基本特征

    封装: 封装是指将数据与具体操作的实现代码放在某个对象内部,使这些代码的实现细节不被外界发现(可以使代码更加安全),外界只能通过接口使用该对象,而不能通过任何形式修改对象内部实现,正是由于封装机制,程 ...

  5. python3.5在内存中获取远程图片尺寸

    自已看看,用于获取选程图片的尺寸 >>> from io import BytesIO>>> import requests as rs>>> f ...

  6. mvc - Authorize授权

    from : http://www.cnblogs.com/asks/p/4372783.html http://www.cnblogs.com/myindex/p/5479428.html

  7. Django Query

    Making Qeries 一旦创建了数据模型,Django就会自动为您提供一个数据库抽象API,允许您创建.检索.更新和删除对象.本文档解释了如何使用这个API. The models 一个clas ...

  8. python,使用百度api实现复制截图中的文字

    百度云文字识别技术文档: 跳转 第三方模块安装: pip install baidu-aip pip install Pillow pip install keyboard pip install p ...

  9. oracle goldengate的两种用法

    此文已由作者赵欣授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 自从oracle收购来了goldengate这款产品并以后对它做了一系列改进后,有非常多的用户使用它做数据迁移 ...

  10. uC/OS-II 函数之消息队列相关函数

    上文主要介绍了信号量相关的函数,本文介绍消息队列相关的函数:OSQCreate()建立消息队列函数,OSQPend()任务等待消息函数,其他的消息函数. 消息队列介绍 消息队列是µC/OS-II中另一 ...