编程学习网 > 编程语言 > Python > python中这么多隐藏属性都哪来的?原来都来源于它
2025
05-29

python中这么多隐藏属性都哪来的?原来都来源于它


python中存在大量的隐藏的属性/方法,它们都有统一的样式 __xxx__,不知道有没有人好奇过,它们到底打哪儿来?是跟孙猴子一样,是从石头里蹦出来的吗?当然不是,它们也是 “有爹有娘” 的,能找到源头的。

一、隐藏属性/方法有哪些
下面我稍微列举一些,大家就能清楚小卡说的属性/方法是哪些:
属性
• __dict__
• __doc__
• __module__
• 其他
方法
• __dir__
• __init__
• __new__
• __repr__
• __str__
• 其他
怎么样,现在明白小卡所说的隐藏属性/方法是哪些了吗?所以它们打哪儿来的呢?
二、源头
其实在python中任何对象的类,源头都是一个:object。
任何在python中,创建一个类,最终的源头肯定是它!
加与不加?
既然话都说到这份上了,最终源头都是它,那么看看下面三个例子,你可能就会更清楚。

第一例

我们非常明显地继承了 object,因此不用多思虑,这个 A 肯定是继承于 object

第二例

在这里,我们并没有去继承 object,那么 A 还是 object 的子类吗?

答案是:是的

我们可以用 __mro__ 方法来获取整个类的继承链路,我们可以看到最终源头还是 object

第三例

我们现在不直接继承其他类,而是继承标准内置库中的类,结果还是 object 吗?

答案是:依然是

三、总结

现在我们知道了所有隐藏属性/方法其实都是来源于 object,而不是莫名产生的。

未来希望知道有哪些内置隐藏的属性和方法,可以直接 ctrl+左键 去查看!

以上就是“python中这么多隐藏属性都哪来的?原来都来源于它的详细内容,想要了解更多Python教程欢迎持续关注编程学习网。

扫码二维码 获取免费视频学习资料

Python编程学习

查 看2022高级编程视频教程免费获取