class PythonPath: (source)
Method | __contains__ |
Check to see whether or not a module exists on my import path. |
Method | __getitem__ |
Get a python module by its given fully-qualified name. |
Method | __init__ |
Create a PythonPath. You almost certainly want to use modules.theSystemPath, or its aliased methods, rather than creating a new instance yourself, though. |
Method | __repr__ |
Display my sysPath and moduleDict in a string representation. |
Method | iterEntries |
Iterate the entries on my sysPath. |
Method | iterModules |
Yield all top-level modules on my sysPath. |
Method | walkModules |
Similar to iterModules , this yields every module on the path, then every submodule in each package or entry. |
Instance Variable | importerCache |
Undocumented |
Instance Variable | moduleDict |
A dictionary mapping string module names to module objects, like sys.modules. |
Instance Variable | moduleLoader |
A function that takes a fully-qualified python name and returns a module, like twisted.python.reflect.namedAny . |
Instance Variable | sysPathHooks |
A list of PEP-302 path hooks, like sys.path_hooks. |
Property | sysPath |
Retrieve the current value of the module search path list. |
Method | _findEntryPathString |
Determine where a given Python module object came from by looking at path entries. |
Method | _smartPath |
Given a path entry from sys.path which may refer to an importer, return the appropriate FilePath-like instance. |
Instance Variable | _sysPath |
A sequence of strings like sys.path. This attribute is read-only. |
Instance Variable | _sysPathFactory |
Undocumented |
Parameters | |
module:str | The name of the module to look for on my import path. |
Parameters | |
modname:str | The fully-qualified Python module name to load. |
Returns | |
PythonModule | an object representing the module identified by modname |
Raises | |
KeyError | if the module name is not a valid module name, or no such module can be identified as loadable. |
Create a PythonPath. You almost certainly want to use modules.theSystemPath, or its aliased methods, rather than creating a new instance yourself, though.
All parameters are optional, and if unspecified, will use 'system' equivalents that makes this PythonPath like the global theSystemPath
instance.
Parameters | |
sysPath | a sys.path-like list to use for this PythonPath, to specify where to load modules from. |
moduleDict | a sys.modules-like dictionary to use for keeping track of what modules this PythonPath has loaded. |
sysPathHooks | sys.path_hooks-like list of PEP-302 path hooks to be used for this PythonPath, to determie which importers should be used. |
importerCache | a sys.path_importer_cache-like list of PEP-302 importers. This will be used in conjunction with the given sysPathHooks. |
moduleLoader | a module loader function which takes a string and returns a module. That is to say, it is like namedAny - *not* like __import__ . |
sysPathFactory | a 0-argument callable which returns the current value of a sys.path-like list of strings. Specify either this, or sysPath, not both. This alternative interface is provided because the way the Python import mechanism works, you can re-bind the 'sys.path' name and that is what is used for current imports, so it must be a factory rather than a value to deal with modification by rebinding rather than modification by mutation. Note: it is not recommended to rebind sys.path. Although this mechanism can deal with that, it is a subtle point which some tools that it is easy for tools which interact with sys.path to miss. |
iterModules
, this yields every module on the path, then every submodule in each package or entry.twisted.python.reflect.namedAny
.