python超神之路:创建对象的9种方法

python生成对象的9种方法

class Point:
    def __init__(self,x,y):
        self.x = x
        self.y = y
import sys
import copy
import types

point1 = Point(1,2)
point2 = eval("{}({},{})".format("Point",1,2))
point3 = globals()['Point'](1,2)
point4 = locals()["Point"](1,2)
point5 = getattr(sys.modules[__name__],"Point")(1,2)
point6 = copy.deepcopy(point1)
point7 = point1.__class__(1,2)
point8 = type('Point',(Point,),{})(1,2)
point9 = types.new_class('Point',(Point,),{})(1,2)

bs:补充内容

type()方法

tpye(name, bases, dict)
name 类名
bases 父类的元组
dict 类的属性方法和值组成的键值对
返回一个类对象:

__class__方法

__class__功能和type()函数一样,都是查看对象所在的类。

上一篇:无需AutoCAD,用C#生成DWG文件


下一篇:MATLAB中的分类器