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

yipeiwu_com5年前Python基础

先定义一个类:

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模块

以上这篇对Python中9种生成新对象的方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python输出PowerPoint(ppt)文件中全部文字信息的方法

本文实例讲述了Python输出PowerPoint(ppt)文件中全部文字信息的方法。分享给大家供大家参考。具体分析如下: 下面的代码依赖于windows com,所以必须在机器上安装P...

Python实现扩展内置类型的方法分析

本文实例讲述了Python实现扩展内置类型的方法。分享给大家供大家参考,具体如下: 简介 除了实现新的类型的对象方式外,有时我们也可以通过扩展Python内置类型,从而支持其它类型的数据...

python实现多张图片拼接成大图

python实现多张图片拼接成大图

本文实例为大家分享了python实现多张图片拼接成大图的具体代码,供大家参考,具体内容如下 上次爬取了马蜂窝的游记图片,并解决了PIL模块的导入问题,现在直奔主题吧: import...

python tools实现视频的每一帧提取并保存

python tools实现视频的每一帧提取并保存

Preface 最近在做 video caption 相关,要处理大量视频。 今天碰到一个问题,就是要将 YoutubeClips 数据集 中的 avi 格式的视频,将其视频中的每一帧提...

python的else子句使用指南

在日常coding中,分支语句的使用非常普遍,经常会根据是否满足一定的条件对代码执行的逻辑进行一些控制,所以大家对if[elif[else]]一定不会陌生。分支语句中的else子句在其它...