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.
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'
.
'posix'
, 'nt'
,
'dos'
, 'mac'
, 'os2'
, 'ce'
, 'java'
.
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.