Miscellaneous OS interfaces
===========================
Miscellaneous OS interfaces.
This module provides a more portable way of using operating system (OS)
dependent functionality than importing an OS dependent built-in module
like `posix' or `nt'.
This module searches for an OS dependent built-in module like `mac' or
`posix' and exports the same functions and data as found there. The
design of all Python's built-in OS dependent modules is such that as
long as the same functionality is available, it uses the same
interface; e.g., the function `os.stat(PATH)' returns stat information
about PATH in the same format (which happens to have originated with the
POSIX interface).
Extensions peculiar to a particular OS are also available through the
`os' module, but using them is of course a threat to portability!
Note that after the first time `os' is imported, there is _no_
performance penalty in using functions from `os' instead of directly
from the OS dependent built-in module, so there should be _no_ reason
not to use `os'!
The `os' module contains many functions and data values. The items
below and in the following sub-sections are all available directly from
the `os' module.
`error'
This exception is raised when a function returns a system-related
error (e.g., not for illegal argument types). This is also known
as the built-in exception `OSError'. The accompanying value is a
pair containing the numeric error code from `errno' and the
corresponding string, as would be printed by the C function
`perror()'. See the module `errno' , which contains names for the
error codes defined by the underlying operating system.
When exceptions are classes, this exception carries two attributes,
`errno' and `strerror'. The first holds the value of the C
`errno' variable, and the latter holds the corresponding error
message from `strerror()'. For exceptions that involve a file
system path (e.g. `chdir()' or `unlink()'), the exception instance
will contain a third attribute, `filename', which is the file name
passed to the function.
When exceptions are strings, the string for the exception is
`'OSError''.
`name'
The name of the OS dependent module imported. The following names
have currently been registered: `'posix'', `'nt'', `'dos'',
`'mac'', `'os2'', `'ce'', `'java''.
`path'
The corresponding OS dependent standard module for pathname
operations, e.g., `posixpath' or `macpath'. Thus, given the
proper imports, `os.path.split(FILE)' is equivalent to but more
portable than `posixpath.split(FILE)'. Note that this is also a
valid module: it may be imported directly as `os.path'.