Python 进阶——标准散列机制
来源:互联网 发布:数据库课程 编辑:程序博客网 时间:2024/06/10 22:03
散列(hashing)技术不仅在绝大多数算法类书籍中都有详细介绍,而且在 Python 程序当中也非常普及。该技术往往会涉及一些经由某既定对象计算而来的整数值(乍看之下似乎是随机的)。例如,我们可以用这些值来索引数组元素(当然,需要进行某些调整,以确保其在合法的索引范围内)。
在 Python 语言中,标准散列机制是由 hash 函数提供的,调用一个对象的__hash__ 方法:
>>> hash(42)42>>> hash("Hello, world!")-1180830286
42 的类型为 int,”Hello, world!” 的类型为 str:
>>> type(42)int>>> type("Hello, world!")str
使用 dir() 查看 int、str 等基本数据类型的属性和方法列表:
>>> dir(int)
该机制常用于字典类型(dict)的实现,而 dict 就是我们常数的散列表。同样,集合类型(set)也是通过这种机制实现的。
这就意味着我们在对 dict 和 set 中的元素进行访问时所耗费的(预期)时间都是常数级的。
0 0
- Python 进阶——标准散列机制
- Python进阶10-标准库介绍01
- Python进阶11-标准库介绍02
- Python 进阶 —— itertools
- Python 进阶 —— defaultdict
- Python 进阶 —— warnings
- Python——进阶过程
- 运营进阶语言 — python
- Python进阶—map函数
- Python进阶—filter函数
- JAVA进阶4.13——反射机制
- Python 标准库一览(Python进阶学习)
- Python 标准库一览(Python进阶学习)
- python进阶——类和对象
- python进阶——异常处理
- Python 进阶——重访 list
- Python 进阶——重访 set
- Python 进阶 —— map-reduce
- 5.ARM体系结构要点总结
- 蓝桥杯 基础练习 字母图形
- Nginx初步介绍
- latex自定义命令
- buptoj 941:Mr.L's Journey
- Python 进阶——标准散列机制
- Lua中的异常处理pcall、xpcall、debug使用实例
- RMQ算法
- JavaScript 运行机制详解
- easyui treegrid 更新行数据
- 设计模式的预备知识:类图与设计原则
- Android WebView 实现JS相互调用 JsBridge
- 修改textview button 中图片的方法
- 蓝桥杯 基础练习 数列特征