美文网首页
python9种方法来生成新对象

python9种方法来生成新对象

作者: 我爱大灰狼 | 来源:发表于2018-06-04 14:41 被阅读0次

先定义一个类:

class Point():

  def __init__(self, x, y):

      self.x = x

      self.y = y

生成新对象:

1、point = Point(1, 2)

2、point = eval("{},({},{})".format("Point", 1,2))

3、point = globals()["Point"](1, 2)

4、point = locals()["Point"](1, 2)

5、point = getattr(sys.modules[__name__], "Point")(1, 2)

6、point = copy.deepcopy(point)

7、point = point.__class__(1, 2)

8、point = type("Point", (Point, ),{})(1, 2)

9、point = type.new_class("Point", (Point, ),{})(1, 2)


相关文章

  • python9种方法来生成新对象

    先定义一个类: class Point(): def __init__(self, x, y): self...

  • 科研日记

    论文1: Variational Blue Noise Sampling 这论文的目的就是用一种新的方法来生成蓝噪...

  • 简单理解PHP生成器

    适用PHP版本 (PHP 5 >= 5.5.0, PHP 7) 生成器提供了一种更容易的方法来实现简单的对象迭代,...

  • Java | String类

    一、String类的两种实例化方法 1.利用String类中提供的构造方法来生成对象 String(Stringo...

  • generator

    generator(生成器) 说明 提供了一种更容易的方法来实现简单的对象迭代,相比较定义类实现 Iterator...

  • IOS学习之浅析深拷贝与浅拷贝

    a. 浅拷贝,不生成新对象(只拷贝指针,内容依旧是原对象指针所指向内容)b. 深拷贝,生成新的对象(生成新的指针地...

  • 四十五、内存管理之(四)Copy

    浅拷贝:指针拷贝,不会生成新对象。深拷贝:内容拷贝,会产生新对象。 注意:对象类型的浅拷贝,不会生成新对象,相当于...

  • Python3 - 深拷贝,浅拷贝

    浅拷贝 不一定生成新的对象: 若被拷贝的对象是可变的,则会生成新的对象; 若被拷贝的对象是不可变的,则不会生成新的...

  • iOS NSMutableArray和NSArray实例执行mu

    上面的问题分两种情况: 当可变对象mutablecopy和copy之后,都会生成新的对象,只是新的对象的类型一个是...

  • 复制构造函数

    生成一个对象的副本有两种途径——第一种途径是建立一个新的对象,然后将一个已有对象的数据成员值取出来,赋值给新的对象...

网友评论

      本文标题:python9种方法来生成新对象

      本文链接:https://www.haomeiwen.com/subject/slebkftx.html