1. 程式人生 > >Python中9種生成新物件的方法

Python中9種生成新物件的方法

先定義一個類:

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

下面我們使用9種方法來生成新的物件:
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)

PS: 需要匯入sys和types模組