字典(当索引不好用时)
2017-01-14 00:19
239 查看
列表这种数据结构适合于将值组织到一个结构中,并且通过编号对其进行引用。在本节中,将介绍一种通过名字引用值得数据结构。这种类型的数据结构称为映射(mapping)。字典是Python中唯一内建的映射类型。字典中的值并没有特殊的顺序,但都是存储在一个特定的键(key)下。键可以是数字、字符串甚至是元组。
key是唯一的,故天生去重
注意:字典中的键是唯一(其他类型的映射也如此),而值并不唯一。
查询速度快,比列表快多了
为什么会查询速度会快呢?因为他是hash类型的,那什么是hash呢?
哈希算法将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。要找到散列为同一个值的两个不同的输入,在计算上是不可能的,所以数据的哈希值可以检验数据的完整性。一般用于快速查找和加密算法
dict会把所有的key变成hash 表,然后将这个表进行排序,这样,你通过data[key]去查data字典中一个key的时候,python会先把这个key hash成一个数字,然后拿这个数字到hash表中看没有这个数字, 如果有,拿到这个key在hash表中的索引,拿到这个索引去与此key对应的value的内存地址那取值就可以了。
View Code
字典
字典的特性:
dict是无序的key是唯一的,故天生去重
注意:字典中的键是唯一(其他类型的映射也如此),而值并不唯一。
查询速度快,比列表快多了
为什么会查询速度会快呢?因为他是hash类型的,那什么是hash呢?
哈希算法将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。要找到散列为同一个值的两个不同的输入,在计算上是不可能的,所以数据的哈希值可以检验数据的完整性。一般用于快速查找和加密算法
dict会把所有的key变成hash 表,然后将这个表进行排序,这样,你通过data[key]去查data字典中一个key的时候,python会先把这个key hash成一个数字,然后拿这个数字到hash表中看没有这个数字, 如果有,拿到这个key在hash表中的索引,拿到这个索引去与此key对应的value的内存地址那取值就可以了。
创建和使用字典
创建一个字典>>> dict={ 'name':'Mike', 'age':'18', 'sex':"男", } >>> for i in dict: #高效 print(i,dict[i]) sex 男 age 18 name Mike #低效 items会把先字典变成一个列表,当数据量很大时,转换的时间自然就拉长了 >>> for i, v in dict.items(): print( i , v) sex 男 age 18 name Mike
View Code
相关文章推荐
- 第四章_字典:当索引不好用时
- 11.字典:当索引不好用时
- 第四章 字典:当索引不好用时
- 学习笔记-小甲鱼Python3学习第二十五讲:字典:当索引不好用时
- 《Python基础教程》Lesson04 - 字典:当索引不好用时
- 读书笔记--《Python基础教程第二版》-- 第四章 字典:当索引不好用时
- Python基础教程--字典;当索引不好用时
- Python基础教程笔记——字典:当索引不好用时
- Python基础--字典:当索引不好用时
- Python基础--字典:当索引不好用时
- Python学习笔记-第四章 字典:当索引不好用时
- Python基础教程第四章学习笔记——字典:当索引不好用时
- 学习笔记-小甲鱼Python3学习第二十六讲:字典:当索引不好用时2
- Python基础--字典:当索引不好用时
- python学习笔记之三:字典,当索引不好用时
- 04、字典:当索引不好用时
- FishC笔记—25 讲 字典:当索引不好用时
- Python基础编程(四)字典:当索引不好用时
- Python学习笔记(四) 字典: 当索引不好用时
- Python基础编程(四)字典:当索引不好用时