最新整理Python中的type和object的示例详解
作者:程序员老华 时间:2023-08-10 05:21:44
本文是在上篇文章Python中的type和object,做的补充,希望大家喜欢。
这篇博客主要描述Python的新风格对象(new-style objects),如下:
<type 'type'>和<type 'object'>分别是什么?
用户自定义的类和实例之间是怎么联系的?它们和内置类型又是怎么联系的?
什么是元类(metaclasses)?
New-style表明这篇博客所说的内容只适用于版本为2.2及以上的python。
开始之前
最主要,是理解type和object的区别与联系。我们平时用的最多的是Object,比如你定义一个类时,会继承object:
>>> class Test(object):
... pass
这里你定义了一个自定义类Test
,不难看出,Test
继承了object
,也就是说,object
是Test
的超类(或者说基类)。
接下来,你可以再定义一个类:
>>> class subTest(Test):
... pass
subTest
继承了Test
,同时,因为Test
继承了object
,所以也可以说subTest
继承了object
。在这里涉及到一个重要的知识点,那就是继承具有传递性。如果你仔细观察,你会发现另外一个知识点,那就是:object
是所有类的超类(这句话至关重要)。那type是什么呢?它是object的类型(也就是说object是type的实例),同时,object又是type的超类。
“type是object的类型,同时,object又是type的超类”这句话看起来就充满疑点:那到底是先有object还是先有type呢?其实,“先有object和还是type问题”就像“先有鸡还是先有蛋问题”。到底先有谁呢?不急,请继续看:
你要明白这些,先要知道,python是面向对象的语言。在python里面,一切皆为对象。
一切皆为对象?这里对于一部分人来说,可能不是很容易理解。这么说吧,在python里,
int
整形是对象,整数2
也是对象,你定义的函数啊,类啊都是对象,你定义的变量也是对象。总之,你在python里能用到的都可以称之为对象。
来源:https://blog.csdn.net/m0_72557783/article/details/128222775
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
ES6正则表达式的一些新功能总结
在keras下实现多个模型的融合方式
![](https://img.aspxhome.com/file/2023/5/77755_0s.jpg)
go语言操作redis连接池的方法
从数据行入手保护SQL Server数据安全
![](https://img.aspxhome.com/file/UploadPic/20094/2009413132414109.jpg)
python3.9之你应该知道的新特性详解
原生js实现五子棋游戏
使用IDLE的Python shell窗口实例详解
![](https://img.aspxhome.com/file/2023/7/97537_0s.png)
python使用Pycharm创建一个Django项目
![](https://img.aspxhome.com/file/2023/4/110054_0s.png)
磁盘垃圾文件清理器python代码实现
![](https://img.aspxhome.com/file/2023/9/60709_0s.jpg)
PHP convert_cyr_string()函数讲解
![](https://img.aspxhome.com/file/2023/4/55394_0s.png)
jupyter 中文乱码设置编码格式 避免控制台输出的解决
![](https://img.aspxhome.com/file/2023/1/86241_0s.jpg)
Swift 3.0在集合类数据结构上的一些新变化总结
Python 面向对象编程的三大特性之继承
![](https://img.aspxhome.com/file/2023/2/79412_0s.png)
PHP删除数组中指定值的元素常用方法实例分析【4种方法】
python+tkinter+mysql做简单数据库查询界面
![](https://img.aspxhome.com/file/2023/4/83784_0s.png)
解析mysql二进制日志处理事务与非事务性语句的区别
分享Python文本生成二维码实例
SQLServer 连接失败错误故障的分析与排除
![](https://img.aspxhome.com/file/2023/2/106222_0s.jpg)
Python实现子类调用父类的初始化实例
![](https://img.aspxhome.com/file/2023/6/70136_0s.jpg)
python-pymysql如何实现更新mysql表中任意字段数据
![](https://img.aspxhome.com/file/2023/4/78654_0s.png)