python对象与实例_python中的对象与实例

本文介绍了Python中的对象和实例的概念。Python的类定义是对象,通常继承自`object`以获得新式类行为。类是构建对象的模板,实例则是通过类创建的对象。此外,还提到了元类——用于构建类的模板,`type`既是创建类的函数,也是一个元类。
摘要由CSDN通过智能技术生成

小编典典

在Python中,类定义(即类的主体)称为对象

实际上,这在Python中仍称为类。这就是为什么要这样定义它:

class Foo(object):

pass

使用class关键字是因为结果仍称为类。

object括号中的单词表示Foo源自名为的类object。请勿混淆-这里可以使用任何现有的类;实际上不止一个。

您通常从中得出类的原因object是历史性的意外,但可能值得详细说明。Python的原始对象实现将用户定义的类和内置类型视为略有不同的事物。然后,语言的设计师决定统一这两个概念。因此,从object(或从的后代object)派生的类的行为与

不是 从派生的object类(称为新样式的类)的行为略有不同。另一方面,老式类的定义如下:

class Foo:

pass

class Bar(Foo):

pass

请注意,它们不会继承object或继承自object。这使它们成为旧式的类。

使用Python 2.x时,您的类几乎应该始终继承自object,因为使用几种小型但重要的方式可以更好地使用新型对象。

为了使事情更加混乱,在Python 3.0和更高版本中,没有老式的类,因此您不必object显式派生。换句话说,以上 所有 类都是Python

3.x中的新型类。

现在,回到眼前的事情。类 是

对象,因为一切都是Python中的对象。列表,字典,整数,字符串,元组…所有这些都是对象,Python程序的构造块也是如此:模块,函数和类。您可以使用class关键字创建一个类,然后将其传递给函数,对其进行修改等。(为完整起见,您还可以使用该type()函数创建一个类。)

类是用于构建对象的模板,这些对象称为 实例。 这部分您已经知道。您可以实例化类似于调用函数的对象,并传入初始值和其他参数:

mylist = list("abc") # constructs ["a", "b", "c"]

在幕后,这将创建一个实例,然后调用新实例的__init__() 方法对其进行初始化。由于所有内容都是Python中的对象,因此类的实例也是对象。

您可能想知道的最后一件事是,就像类是用于构建对象的模板一样,也可能有用于构建类的模板。这些称为 元类。

调用了基元类type(即,普通的新式类是的实例type)。

(是的,这与type我之前提到的可用于创建类的相同,而可以将其称为创建类的原因是它是一个元类。)

要创建自己的元类,可以type像这样派生它:

class mymeta(type):

pass

元类是一个相当高级的Python主题,因此我不会讨论您可能将它们用于什么或如何使用它们,但是它们应明确说明Python将“一切皆对象”的概念带到了多远。

2020-12-20

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值