如何深入掌握Python元类及其在单例模式中的应用?
- 内容介绍
- 文章标签
- 相关推荐
本文共计5289个文字,预计阅读时间需要22分钟。
一、理解类也属于对象
在多数编程语言中,类本身也是一种对象。类是一种用于描述对象结构和行为的模板,它可以用来生成具体的对象实例。
例如,在Python中,类就是一种对象。下面是一个简单的例子:
pythonclass ObjectCreator(object): pass
my_object=ObjectCreator()print(my_object)
一、理解类也是对象
在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段。在Python中这一点仍然成立:
class ObjectCreator(object):pass
my_object = ObjectCreator()
print my_object
#输出:<__main__.ObjectCreator object at 0x8974f2c>
但是,Python中的类还远不止如此。类同样也是一种对象。只要你使用关键字class,Python解释器在执行的时候就会创建一个对象。下面的代码段:
class ObjectCreator(object):pass
将在内存中创建一个对象,名字就是ObjectCreator。这个对象(类)自身拥有创建对象(类实例)的能力,而这就是为什么它是一个类的原因。但是,它的本质仍然是一个对象,于是你可以对它做如下的操作:
你可以将它赋值给一个变量, 你可以拷贝它, 你可以为它增加属性, 你可以将它作为函数参数进行传递。
本文共计5289个文字,预计阅读时间需要22分钟。
一、理解类也属于对象
在多数编程语言中,类本身也是一种对象。类是一种用于描述对象结构和行为的模板,它可以用来生成具体的对象实例。
例如,在Python中,类就是一种对象。下面是一个简单的例子:
pythonclass ObjectCreator(object): pass
my_object=ObjectCreator()print(my_object)
一、理解类也是对象
在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段。在Python中这一点仍然成立:
class ObjectCreator(object):pass
my_object = ObjectCreator()
print my_object
#输出:<__main__.ObjectCreator object at 0x8974f2c>
但是,Python中的类还远不止如此。类同样也是一种对象。只要你使用关键字class,Python解释器在执行的时候就会创建一个对象。下面的代码段:
class ObjectCreator(object):pass
将在内存中创建一个对象,名字就是ObjectCreator。这个对象(类)自身拥有创建对象(类实例)的能力,而这就是为什么它是一个类的原因。但是,它的本质仍然是一个对象,于是你可以对它做如下的操作:
你可以将它赋值给一个变量, 你可以拷贝它, 你可以为它增加属性, 你可以将它作为函数参数进行传递。

