3.28 new -- Runtime implementation object creation

The new module allows an interface to the interpreter object creation functions. This is for use primarily in marshal-type functions, when a new object needs to be created ``magically'' and not by using the regular creation functions. This module provides a low-level interface to the interpreter, so care must be exercised when using this module.

The new module defines the following functions:

instance (class, dict)
This function creates an instance of class with dictionary dict without calling the __init__() constructor. Note that there are no guarantees that the object will be in a consistent state.

instancemethod (function, instance, class)
This function will return a method object, bound to instance, or unbound if instance is None. function must be callable, and instance must be an instance object or None.

function (code, globals[, name[argdefs]])
Returns a (Python) function with the given code and globals. If name is given, it must be a string or None. If it is a string, the function will have the given name, otherwise the function name will be taken from code.co_name. If argdefs is given, it must be a tuple and will be used to the determine the default values of parameters.

code (argcount, nlocals, stacksize, flags, codestring, constants, names, varnames, filename, name, firstlineno, lnotab)
This function is an interface to the PyCode_New() C function.

module (name)
This function returns a new module object with name name. name must be a string.

classobj (name, baseclasses, dict)
This function returns a new class object, with name name, derived from baseclasses (which should be a tuple of classes) and with namespace dict.

Send comments on this document to python-docs@python.org.