Python中创建对象的方法

源引:Python编程实践

示例类:

class Point:
    __slots__=('x','y')
    def __init__(self,x,y):
        self.x=x
        self.y=y   

 

def make_object(Class,*args,**kwargs):
    return Class(*args,**kwargs)

point1=Point(1,2)
point2=eval("{},{},{}".format("Point",2,4))
point3=getattr(sys.modules[__name__],"Point")(3,6)
ponit4=globals()["Point"](4,8)
point5=make_object(Point,9,10)
point6=copy.deepcopy(point5)
point6.x=6
point6.y=12
point7=point1.__class__(7,14)

解释器在执行一个模块文件的时候过程中,会把相关依赖的模块导入进来,并且注册安装在sys.modules字典中。例如:当一个模块文件被用作执行的时候,__name__(模块名)为__main__,这个模块就会被安装。模块的__name__值为键值。

Python中类也为一种对象,可以作为参数传入可以作为变量引用,解释器在从上往下执行的过程中会把会生成各种对象添加到该模块的上下文中。

getattr()函数用于访问对象的属性。

posted @ 2017-02-02 22:41  白守敬  阅读(5843)  评论(0编辑  收藏  举报