gpt4 book ai didi

python - 内置的 object() 什么时候有用?

转载 作者:太空狗 更新时间:2023-10-29 21:22:25 26 4
gpt4 key购买 nike

我想弄清楚我将使用 object() 内置函数做什么。它不接受任何参数,并返回所有 Python 类通用类型的“无特征对象”,并具有所有 Python 类通用的所有方法。

引用 Jack Skellington,WHAT. IS. THIS?

最佳答案

即使您不需要使用它进行编程,object 也有一个用途:它是所有其他对象派生自的通用类。它是 mro ( method resolution order ) 方法列出的最后一个类。我们需要这个概念的名称和对象,object 就是为了这个目的。

object 的另一个用途是创建 sentinels .

sentinel = object()

这通常用于多线程编程——通过队列传递——到signal a termination event .我们可能不想发送 None 或任何其他值,因为队列处理程序可能需要将这些值解释为要处理的参数。我们需要一些程序的其他部分无法产生的独特值(value)。

以这种方式创建一个哨兵提供了这样一个独特的对象,它肯定不是一个正常的队列值,因此可以被测试并用作一些特殊事件的信号。还有其他可能性,例如创建类、类实例或函数,但所有这些替代方案都更大、更耗资源,而且不像 object() 那样简洁。

关于python - 内置的 object() 什么时候有用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18939327/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com