对Python中9种生成新对象的方法总结

时间:2022-02-01 02:21:13

先定义一个类:

?
1
2
3
4
class Point:
 def __init__(self, x, y):
  self.x = x
  self.y = y

下面我们使用9种方法来生成新的对象

?
1
2
3
4
5
6
7
8
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模块

以上这篇对Python中9种生成新对象的方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/xiemanR/article/details/77922917