os.path.abspath(path)
返回路径名path 的规范化的绝对路径。
os.path.basename(path)
返回路径名path的主文档名。在path上调用split()函数,返回的二元组中的第二个元素就是主文档名。这和Unix的basename不同;对于'/foo/bar/',basename返回'bar',而basename()函数返回空字符串('')。
os.path.commonprefix(list)
返回list中所有路径的最长通用前缀(逐字符比较)。如果list为空,返回空字符串('')。因为是逐字符比较,所以可能会返回无效的路径。
os.path.dirname(path)
返回路径名path的目录名。在path上调用函数split(),返回的二元组中的第一个元素就是目录名。
os.path.exists(path)
如果path引用一个存在的路径,返回True。如果path引用一个断开的符号链接,返回False。在某些平台上,尽管path物理存在,但是由于没有执行os.stat()的权限,该函数也会返回False。
os.path.lexists(path)
如果path引用一个存在的路径,返回True。对于断开的符号链接也返回True。等同于缺少os.lstat()的平台上的exists()。
出现于版本2.4。
os.path.expanduser(path)
在Unix和Windows平台上,返回参数,参数中开头的~或者~user被替换成user的主/家目录。
在Unix上,开头的~被替换成环境变量HOME,如果它被设置的话;否则,通过内建模块pwd在密码目录查询当前用户的家目录。如果开头是 ~user ,则直接在密码目录中查询(user的家目录)。
在Windows上,将使用HOME和USERPROFILE,如果它们被设置的话;否则使用HOMEPATH和HOMEDRIVE的组合。如果开头是~user,首先按上述方式得到user路径,然后移除最后的目录部分。
如果扩展失败或者参数path不是以~打头,则直接返回参数(path)。
os.path.expandvars(path)
返回参数,其中的环境变量被扩展。参数中形如$name或者${name}的部分被替换成环境变量name。如果格式不正确或者引用了不存在的变量,则不进行替换(或者扩展)。
在Windows上, 除了$name和${name}之外还支持如%name%这样的扩展。
os.path.getatime(path)
返回path的最后访问时间。返回的是从Unix纪元开始的跳秒数(epoch,Unix纪元,即GMT 1970-01-01 00:00:00)(参见time模块)。如果文件不存在或者不可访问,返回os.error。
出现于版本1.5.2。
改变于版本2.3:如果os.stat_float_times()返回True,则结果是浮点数。
os.path.getmtime(path)
返回path的最后修改时间。返回的是从Unix纪元开始的跳秒数(参见time模块)。如果文件不存在或者不可访问,返回os.error。
出现于版本1.5.2。
改变于版本2.3:如果os.stat_float_times()返回True,则结果是浮点数。
os.path.getctime(path)
返回系统的ctime,在Unix这样的系统上,它是文件元数据最后修改时间(或者可以说是文件状态最后修改时间);在Windows这样的系统上,它是path的创建时间。返回的是从Unix纪元开始的跳秒数(参见time模块)。如果文件不存在或者不可访问,返回os.error。
出现于版本2.3。
os.path.getsize(path)
返回path的大小,以字节为单位。如果文件不存在或者不可访问,返回os.error。
出现于版本1.5.2。
os.path.isabs(path)
如果path是绝对路径名,返回True。在Unix上,这表示路径以/开始;在Windows上,这表示路径以\开始(在去掉可能的盘符后,如C:)。
os.path.isfile(path)
如果path是一个存在的普通文件,返回True。它会跟随符号链接,所以对相同的路径,islink()和isfile()可以同时为真。
os.path.isdir(path)
如果path是一个存在的目录,返回True。它会跟随符号链接,所以对于相同的路径,islink()和isdir()可以同时为真。
os.path.islink(path)
如果path引用的目录条目是个符号链接,返回True。如果Python运行期不支持符号链接,则总是返回False。
os.path.ismount(path)
如果路径名path是一个mount point(挂载点),返回True。挂载点是文件系统中的一点,不同的文件系统在此被挂载。它检查path的父目录path/..和path是否在不同的设备上,或者检查path/..和path是否指向相同设备的相同i-node,——这可以检查出Unix和POSIX变种下的挂载点。
os.path.join(path1[, path2[, ...]])
将一个或多个路径正确地连接起来。如果任何一个参数是绝对路径,那之前的参数就会被丢弃,然后连接继续(如果在Windows上,如果有盘符,盘符也会被丢弃)。返回的值是path1、path2等等的连接,每个非空部分除了最后一个后面只跟随一个目录分隔符(os.sep)。(这意味着最后一部分为空将导致路径以分隔符结尾。)Note that on Windows, since there is a current directory for each drive, os.path.join("c:", "foo") represents a path relative to the current directory on drive C: (c:foo), not c:foo.
os.path.normcase(path)
标准化路径名的大小写。在Unix和Mac OS X上,原样返回路径;在大小写敏感的系统上,将路径名转换成小写。在Windows上,还会将斜线转换成反斜线。
os.path.normpath(path)
标准化路径名,合并多余的分隔符和上层引用,这样A//B, A/B/, A/./B 和A/foo/../B 都变成 A/B。该字符串操作可能改变包含符号链接的路径的含义。在Windows上,还会将斜线转换成反斜线。若要标准化大小写,请使用normcase()。
os.path.realpath(path)
返回指定的文件名的规范名字,并消除路径中遇到的任何符号链接(如果操作系统支持的话)。
出现于版本 2.2。
os.path.relpath(path[, start])
返回自当前目录或者可选的start 目录的 path相对文件路径。这只是单纯的路径计算:不会访问文件系统以确认path 或者 start 的存在性或者属性。
start 默认为os.curdir。
可用的平台: Windows、 Unix。
出现于版本 2.6。
os.path.samefile(path1, path2)
如果两个路径名参数引用的是相同的文件或目录(由设备号和i-node号指示),则返回True。如果在任一路径上调用os.stat()失败将抛出异常。
可用的平台:Unix。
os.path.sameopenfile(fp1, fp2)
如果描述符fp1 和fp2引用的是相同的文件,则返回True。
可用的平台:Unix。
os.path.samestat(stat1, stat2)
如果文件信息元组stat1和stat2引用的是相同的文件,则返回True。这些结构可能是由os.fstat()、os.lstat()或者os.stat()返回。该函数底层使用samefile() 和sameopenfile()实现比较。
可用的平台:Unix。
os.path.split(path)
将路径名path 分割成(head, tail),其中tail路径名的最后一部分,head 是其之前的所有部分。tail部分永远不会包含斜线;如果path以斜线结束,tail 将为空。如果path中没有斜线,head将为空。如果path为空,head 和 tail两个都将为空。尾部的斜线会从head中去除掉,除非它是根目录(只包含一个或多个斜线的目录)。对于所有情况,join(head, tail)都将返回一个和path相同的位置(但是表示的字符串可能不一样)。另请参阅dirname() 和basename()函数。
os.path.splitdrive(path)
将path分割成一个(drive, tail)对,其中drive是一个驱动器描述符或者空字符串。在没有使用驱动器描述符的系统上,drive 将永远是空字符串。无论哪一种情况,drive + tail将和 path相同。
出现于版本1.3。
os.path.splitext(path)
将路径名path分割成一个(root, ext)对使得root + ext == path,ext 为空或者以点号开始并至多包含一个点。路径名前面的点号将被忽略;splitext('.cshrc') 返回 ('.cshrc', ')。
版本2.6 以后的变化:当点号是第一个字符时,早期的版本将产生一个空的root。
os.path.splitunc(path)
将 path 分隔成一个(unc, rest)对,unc 是UNC挂载点(例如r'\\hostmount'),rest 是路径剩下的部分(例如 r'\path\file.ext')。对于包含驱动器字母的路径,unc将永远是空字符串。
可用的平台:Windows。
os.path.walk(path, visit, arg)
以 path 为根目录(如果 path 为目录,则包括它 本身),为目录树中每一个目录以(arg, dirname, names)参数调用函数visit。参数 dirname 表示访问的目录,参数 names 列出该目录中的文件(从os.listdir(dirname) 得到)。 visit 函数可以修改names 以改变dirname 下访问的目录集合,例如为了避免访问目录树中特殊部分。( names 引用的对象必须使用del或者切片赋值就地修改。)
注意
指向目录的符合链接不会被当作子目录,因此 walk() 将不会访问它们。To visit linked directories you must identify them with os.path.islink(file) and os.path.isdir(file), and invoke walk() as necessary.
注意
该函数已经被弃用,并且,为了鼓励使用 os.walk(),该函数在 Python 3 中已经被移除。
os.path.supports_unicode_filenames
如果可以使用任意Unicode 字符串作为文件名则为True(在文件系统强加的限制之内)。