new
new — Creation of runtime internal objects
自2.6版弃用:new
模块已在Python 3中删除。请改用types
模块的类。
该new
模块允许用于解释器对象创建功能的接口。当需要“神奇地”创建新对象而不是使用常规创建函数时,这主要用于编组类型函数。该模块为解释器提供低级接口,因此在使用此模块时必须小心。当使用对象时,可能会提供使语法解释器崩溃的非感性参数。
该new
模块定义了以下功能:
new.instance(class[, dict])
该函数使用字典词典
创建类
的实例,而不调用构造函数。如果省略了dict
,或者为新实例创建了一个新的空字典。请注意,不保证对象处于一致状态。__init__()None
new.instancemethod(function, instance, class)
该函数
将返回绑定到实例
的方法对象,或者如果实例
为绑定,则返回未绑定None
。函数
必须可调用。
new.function(code, globals[, name[, argdefs[, closure]]])
用给定的代码和全局变量返回一个(Python)函数。如果给出名称
,它必须是一个字符串或None
。如果它是一个字符串,该函数将具有给定的名称
,否则将从中取出函数名称
code.co_name
。如果给出argdefs
,它必须是一个元组,并且将用于确定参数的默认值。如果给出闭包
,它必须是None
包含对象的单元对象的元组来绑定名称
code.co_freevars
。
new.code(argcount, nlocals, stacksize, flags, codestring, constants, names, varnames, filename, name, firstlineno, lnotab)
这个函数是PyCode_New()
C函数的一个接口。
new.module(name[, doc])
该函数返回一个名称
为name
的新模块对象。名称
必须是字符串。可选的doc
参数可以有任何类型。
new.classobj(name, baseclasses, dict)
这个函数返回一个新的类对象,它具有名
称名
,由基类
(应该是类的元组)和命名
空间字典
派生而来。