python映射类型-python笔记-映射类型(字典)
一、字典
映射 对象会将 不可变的值 映射到任意对象。 映射属于可变对象。 目前仅有一种标准映射类型 字典
字典可以通过将以逗号分隔的 键: 值 对列表包含于花括号之内来创建
例如: {'jack': 4098, 'sjoerd': 4127} 或 {4098: 'jack', 4127: 'sjoerd'}
通过dict()来构造映射对象
dict(one=1, two=2, three=3)
dict(zip(['one', 'two', 'three'], [1, 2, 3]))
dict([('two', 2), ('one', 1), ('three', 3)])
dict({'three': 3, 'one': 1, 'two': 2})
>>> d = {"name": "dyp", "age": 21}
>>> d
{'name': 'dyp', 'age': 21}
>>> d = dict(name="dyp", age=21)
>>> d
{'name': 'dyp', 'age': 21}
>>> d = dict([("name", "dyp"),("age", 21)])
>>> d
{'name': 'dyp', 'age': 21}
字典的键 几乎可以是任何值
可变对象 的值,即包含列表、字典或其他可变类型的值(此类对象基于值而非对象标识进行比较)不可用作键
数字类型用作键时遵循数字比较的一般规则:如果两个数值相等 (例如 1 和 1.0) 则两者可以被用来索引同一字典条目
二、字典支持的操作
list(dict): 返回键列表
>>> d = {'name': 'dyp', 'age': 21}
>>> list(d)
['name', 'age']
len(dict): 返回字典 d 中的项数。
dict[key]: 返回 dict 中以 key 为键的value。 如果映射中不存在 key 则会引发 KeyError。
>>> d = {'name': 'dyp', 'age': 21}
>>> d["name"]
'dyp'
dict[key] = value: 将 dict[key] 设为 value
>>> d = {'name': 'dyp', 'age': 21}
>>> d["name"] = "dyy"
>>> d
{'name': 'dyy', 'age': 21}
del dict[key]: 将 dict[key] 从 d 中移除。 如果映射中不存在 key 则会引发 KeyError。
>>> d = {'name': 'dyy', 'age': 21}
>>> del d["name"]
>>> d
{'age': 21}
key in d: 如果 d 中存在键 key 则返回 True,否则返回 False。
key not in d: 等价于 not key in d。
dict.clear(): 移除字典中的所有元素。
dict.copy(): 返回原字典的浅拷贝。
>>> d = {"name": "dyp", "age": 21}
>>> d.copy()
{'name': 'dyp', 'age': 21}
dict.get(key[, default]): 如果 key 存在于字典中则返回 key 的值,否则返回 default。 如果 default 未给出则默认为 None,因而此方法绝不会引发 KeyError
>>> d = {'name': 'dyp', 'age': 21}
>>> d.get("age", 12)
21
dict.items(): 返回由字典项 (键, 值) 对 组成的一个新视图
>>> d = {'name': 'dyp', 'age': 21}
>>> d.items()
dict_items([('name', 'dyp'), ('age', 21)])
dict.keys(): 返回由字典键组成的一个新视图
>>> d = {'name': 'dyp', 'age': 21}
>>> d.keys()
dict_keys(['name', 'age'])
dict.pop(key[, default]): 如果 key 存在于字典中则将其移除并返回其值,否则返回 default。 如果 default 未给出且 key 不存在于字典中,则会引发 KeyError
>>> d = {'name': 'dyp', 'age': 21}
>>> d.pop("name")
'dyp'
dict.popitem(): 从字典中移除并返回一个 (键, 值) 对。 键值对会按 LIFO 的顺序被返回, 空字典会报错
>>> d = {'age': 21, 'name': 'dyp'}
>>> d.popitem()
('name', 'dyp')
reversed(dict): 返回一个逆序获取字典键的迭代器
dict.setdefault(key[, default]): 如果字典存在键 key ,返回它的值。如果不存在,插入值为 default 的键 key ,并返回 default 。 default 默认为 None
>>> d = {'age': 21, 'name': 'dyp'}
>>> d.setdefault("name", "dyy")
'dyp'
dict.update([other]): 使用来自 other 的键:值对更新字典,覆盖原有的键
>>> d = {'age': 21, 'name': 'dyp'}
>>> d.update({"name": "dyy", "age": 22})
>>> d
{'age': 22, 'name': 'dyy'}
dict.values(): 返回由字典值组成的一个新视图
>>> d = {'age': 22, 'name': 'dyy'}
>>> d.values()
dict_values([22, 'dyy'])
python映射类型-python笔记-映射类型(字典)相关推荐
- python的符号函数得到的数字类型_Python笔记——数字类型的几个函数
标准类型内建函数: cmp(obj1, obj2) 比较obj1和obj2,根据比较结果返回整型i: i < 0 if obj1 < obj2 i > 0 if obj1 > ...
- python映射类型-python第二版7章笔记--映射和集合类型
7.1 映射 字典是 Python 语言中唯一的映射类型.映射类型对象里哈希值(键) 和指向的对象(值)是一对多的关系. 它们与 Perl 中的哈希类型(译者注:又称关联数组)相似,通常被认为是可变的 ...
- python映射类型-python 基础学习 — 映射类型:字典
一.字典: { } 字典是 Python 语言中唯一的映射类型.映射类型对象里哈希值(键) 和指向的对象(值)是一对多的关系. 二.创建字典 d1 = {'name': 'earth', 'port' ...
- python映射类型-Python中字典映射类型的学习教程
字典是python语言中唯一的映射类型,用花括号{}表示,一个字典条目就是一个键值对,方法keys()返回字典的键列表,values()返回字典的值列表,items()返回字典的键值对列表.字典中的值 ...
- python映射类型-Python基础类型之字典(dict)
1.字典: { } 字典是 Python 语言中唯一的映射类型.映射类型对象里哈希值(键) 和指向的对象(值)是一对多的关系. 2.创建字典 d1 = {'name': 'earth', 'port' ...
- python序列类型唯一的映射类型_python2.x学习笔记(8)-映射和集合类型
1. 字典是 Python 语言中唯一的映射类型.映射类型对象里哈希值(键) 和指向的对象(值)是一对一的关系. 2. 一个字典对象是可变的,它是一个容器类型,能存储任意个数的 Python 对象,其 ...
- 《Python Cookbook 3rd》笔记(1.20):合并多个字典或映射
合并多个字典或映射 问题 现在有多个字典或者映射,你想将它们从逻辑上合并为一个单一的映射后执行某些操作,比如查找值或者检查某些键是否存在. 解法 假如你有如下两个字典: a = {'x': 1, 'z ...
- Python基本语法_基本数据类型_字典类型详解
目录 文章目录 目录 软件环境 字典(Dictionary) 创建一个字典对象 简单的创建 fromkey() 使用 keys 来创建字典 查询 查询字典中 key 映射的 value get() 查 ...
- python的dict类型_python数据类型:dict(字典)
一.字典的简单介绍 字典(dict)是python中唯一的一个映射类型.他是以{}括起来的键值对组成. 语法: {key1:value1,key2:value2......} 注意:key必须是不可变 ...
- Python数据分析三剑客学习笔记Day3——pandas包的使用:认识series类型,DataFrame类型,读取excel表格数据及数据操作
本文是视频Python数据分析三剑客 数学建模基础 numpy.pandas.matplotlib的学习笔记. -------------------------------------------- ...
最新文章
- swift 语言 linux,苹果发布Swift 2.2编程语言:支持Ubuntu Linux系统
- VC中退出应用程序-几种很有用的方法
- cocos2d CCNode类(节点属性大全)
- TypeScript class 的静态成员变量
- Merge Two Sorted Lists leetcode java
- 交叉编译HTOP并移植到ARM嵌入式Linux系统
- 2014秋应用计算机,2014年秋计算机应用基础》期末试卷A(A3版).doc
- SIFT(尺度不变特征变换)算法浅析
- 集成产品开发过程及其概念模型
- metasploit连接postgresql的问题(U盘启动kali linux)
- 一天天过得很快啊,今天大家都干了啥?我们拿出来晒晒
- VNC方式连接树莓派
- XenApp6.5启用3D功能
- 保险公司智能运营系统文档
- Kylo 之 spark-job-profiler 源码阅读
- 如何进行音频合并?很简单,只需三步骤
- Linux下qt程序部署到ARM开发板上: error: Upload of file “你的程序“ failed. The server said: “Failure
- Android 二维码扫描(仿微信界面),根据Google zxing
- Sched: RT throttling activated
- 修复Win7服务列表中没有Windows Update服务的问题