10.1. os.path — Common pathname manipulations¶
This module implements some useful functions on pathnames. To read or
write files see open(), and for accessing the filesystem see the
os module.
Note
On Windows, many of these functions do not properly support UNC pathnames.
splitunc() and ismount() do handle them correctly.
Note
Since different operating systems have different path name conventions, there
are several versions of this module in the standard library. The
os.path module is always the path module suitable for the operating
system Python is running on, and therefore usable for local paths. However,
you can also import and use the individual modules if you want to manipulate
a path that is always in one of the different formats. They all have the
same interface:
posixpathfor UNIX-style pathsntpathfor Windows pathsmacpathfor old-style MacOS pathsos2emxpathfor OS/2 EMX paths
-
os.path.abspath(path)¶ Return a normalized absolutized version of the pathname path. On most platforms, this is equivalent to
normpath(join(os.getcwd(), path)).New in version 1.5.2:
New in version 1.5.2.
-
os.path.basename(path)¶ Return the base name of pathname path. This is the second half of the pair returned by
split(path). Note that the result of this function is different from the Unix basename program; where basename for'/foo/bar/'returns'bar', thebasename()function returns an empty string ('').
-
os.path.commonprefix(list)¶ Return the longest path prefix (taken character-by-character) that is a prefix of all paths in list. If list is empty, return the empty string (
''). Note that this may return invalid paths because it works a character at a time.
-
os.path.dirname(path)¶ Return the directory name of pathname path. This is the first half of the pair returned by
split(path).
-
os.path.exists(path)¶ Return
Trueif path refers to an existing path. ReturnsFalsefor broken symbolic links. On some platforms, this function may returnFalseif permission is not granted to executeos.stat()on the requested file, even if the path physically exists.
-
os.path.lexists(path)¶ Return
Trueif path refers to an existing path. ReturnsTruefor broken symbolic links. Equivalent toexists()on platforms lackingos.lstat().New in version 2.4:
New in version 2.4.