07-3 | 魔术方法和实例化可视化hash

逸兴
逸兴
逸兴
57
文章
25
评论
2020-05-2221:32:06
评论
340字阅读1分8秒

魔术方法

__repr__, __str__ 自定义实例表示方式

07-3 | 魔术方法和实例化可视化hash

__bytes__ 返回bytes类型

07-3 | 魔术方法和实例化可视化hash

可视化哈希

07-3 | 魔术方法和实例化可视化hash

哈希值必须是个整数。

__eq__() 实例内容相等

07-3 | 魔术方法和实例化可视化hash

虽然两个实例的哈希值相同,但是集合去重比较的除了哈希值外,还有元素内容。

哈希值相同,只能说明两个元素发生了哈希碰撞,其内容不一定相同。

07-3 | 魔术方法和实例化可视化hash

集合添加元素时,新元素如果与前面的元素哈希相同,再去比较他们的内容,如果内容也相等,则新元素不会加入到集合。

python集合和字典的去重,都是一样的。

07-3 | 魔术方法和实例化可视化hash

__slots__

是一个特殊属性,用作类属性,使用后,实例 的__dict__就没了。后面的多线程编程中threading.local() 会用到 https://www.mcabana.com/archives/2777.html

这样可以节省内存。

07-3 | 魔术方法和实例化可视化hash



https://www.hugbg.com/archives/2625.html
逸兴
  • 本文由 发表于 2020-05-2221:32:06
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
01-1 数据类型 基础语法

01-1 数据类型

第一章 数据类型 使用type() 函数可以查看数据类型 1.1 字符串 str 字符串是使用单引号或双引号括起来的任意文本。 比如'abc', '123'等 字符串类型 字符串类型用str表示 st...
09-5 | asyncio基本使用 并发编程

09-5 | asyncio基本使用

第一节 关于asyncio asyncio 在3.4 版本中加入到标准库, asyncio基于selector实现, 看似库, 其实是个框架, 包含异步IO, 事件循环, 协程, 任务等内容。 通过a...
09-4 | 全局解释器锁 & 多进程 & 池 并发编程

09-4 | 全局解释器锁 & 多进程 & 池

GIL CPython 在解释器进程级别有一把锁,叫做GIL,即全局解释器锁。 GIL 保证CPython进程中,只有一个线程执行字节码。甚至是在多核CPU的情况下,也只允许同时只能 有一个CPU核心...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: