Python中对象和类的区别是什么?

11

我是一个自学Python的用户(有点像)。 我阅读了很多关于Python的知识以加深了解。今天

我遇到了一篇文章,其中写道:

 

...类和对象....

所以我想知道Python中对象和类之间的区别。 我认为所有的类都是对象,但在这种情况下,作者不应该使用“类和对象”的短语。 我很困惑...


维基百科关于面向对象编程的页面对这个有帮助吗?http://en.wikipedia.org/wiki/Object-oriented_programming 看起来很清晰。维基百科页面上有什么让你感到困惑的地方吗? - S.Lott
5个回答

12

这是面向对象编程中两个密切相关的术语。标准含义是指一个对象是一个的实例。


7

对象是类的一个实例。

将类想象成汽车的蓝图。

Ford根据蓝图中的规则和信息制造汽车(对象)。


类是什么的实例化? - FLCL
4
@Aleksey 一个类是元类的实例化。在你问之前,元类也是元类的实例化,在Python术语中,默认元类'type'是它自己的一个实例。也就是说,type(type) is type - Duncan

3

是的,在Python中,类(以及函数、模块和基本上所有东西)也是对象。它们之间的区别在于它们的类型:

class Foo(object): pass
print type(Foo)
print type(Foo())

为了看到它们都是对象,你可以检查它们是否都有属性:

print dir(Foo)
print dir(Foo())

3

一个类描述了对象将会是什么,但它并不是对象本身。


2

一个类是一种概念。对象是这种概念的实现。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接