os.path模块如何工作?

时间:2017-01-11 11:17:58

标签: python os.path

os.path 是python中的一个模块,但我在安装目录中找不到名为 os.path.py 的文件。 但是其他模块,如 os string 等,我可以找到相应的实现文件 os.py string.py < /强>

现在,我想知道os.path模块是如何工作的?

1 个答案:

答案 0 :(得分:2)

根据您使用的平台,os.path实际上是:

  • ntpath.py for Windows
  • posixpath.py for Linux
  • macpath.py适用于Mac OSX

os模块在​​文件顶部说明了这一点:

r"""OS routines for NT or Posix depending on what system we're on.

This exports:
  - all functions from posix, nt, os2, or ce, e.g. unlink, stat, etc.
  - os.path is one of the modules posixpath, or ntpath
  - os.name is 'posix', 'nt', 'os2', 'ce' or 'riscos'
  - os.curdir is a string representing the current directory ('.' or ':')
  - os.pardir is a string representing the parent directory ('..' or '::')
  - os.sep is the (or a most common) pathname separator ('/' or ':' or '\\')
  - os.extsep is the extension separator ('.' or '/')
  - os.altsep is the alternate pathname separator (None or '/')
  - os.pathsep is the component separator used in $PATH etc
  - os.linesep is the line separator in text files ('\r' or '\n' or '\r\n')
  - os.defpath is the default search path for executables
  - os.devnull is the file path of the null device ('/dev/null', etc.)

Programs that import and use 'os' stand a better chance of being
portable between different platforms.  Of course, they must then
only use functions that are defined by all platforms (e.g., unlink
and opendir), and leave all pathname manipulation to os.path
(e.g., split and join).
"""