os.path
是Python标准库中的一个模块,提供了一些用于处理文件路径的函数和变量。它可以跨平台地处理不同操作系统下的路径问题,包括Windows、Linux、Unix等。
os.path
模块中的函数和变量可以用于处理路径字符串,并返回路径的各种组成部分,如文件名、目录名、扩展名等。同时,它也提供了一些常用的路径操作函数,如将多个路径组合成一个完整的路径、判断路径是否存在、获取路径的绝对路径等。
使用os.path
模块,可以避免手动拼接路径字符串的麻烦,并且可以处理跨平台的路径问题。在文件和目录操作中,os.path
是一个非常实用的模块。
os.path
模块提供了一些常用的用于处理文件路径的函数和变量,主要包括以下内容:
os.path.abspath(path)
:返回给定路径的绝对路径。
import os
path = '../file.txt'
print(os.path.abspath(path)) # /home/user/Documents/file.txt
os.path.basename(path)
:返回路径中的文件名部分。
import os
path = '/home/user/Documents/file.txt'
print(os.path.basename(path)) # file.txt
os.path.commonprefix(list)
:返回多个路径的公共前缀。os.path.dirname(path)
:返回路径中的目录部分。
import os
path = '/home/user/Documents/file.txt'
print(os.path.dirname(path)) # /home/user/Documents
os.path.exists(path)
:判断指定路径是否存在。
import os
path = '/home/user/Documents/file.txt'
print(os.path.exists(path)) # True
os.path.expanduser(path)
:展开路径中的波浪号(~)。os.path.expandvars(path)
:根据环境变量的值替换路径中的变量。os.path.getatime(path)
:返回最近访问时间。os.path.getctime(path)
:返回创建时间。os.path.getmtime(path)
:返回最近修改时间。os.path.getsize(path)
:返回文件大小(字节数)。
import os
path = '/home/user/Documents/file.txt'
print(os.path.getsize(path)) # 1024
os.path.isabs(path)
:判断路径是否为绝对路径。os.path.isfile(path)
:判断路径是否为文件。
import os
path = '/home/user/Documents/file.txt'
print(os.path.isfile(path)) # True
os.path.isdir(path)
:判断路径是否为目录。
import os
path = '/home/user/Documents'
print(os.path.isdir(path)) # True
os.path.islink(path)
:判断路径是否为符号链接。os.path.join(path1[, path2[, ...]])
:连接多个路径组件。
import os
path1 = '/home/user'
path2 = 'Documents/file.txt'
print(os.path.join(path1, path2)) # /home/user/Documents/file.txt
os.path.normcase(path)
:将路径转换为合适的大小写表示方式。os.path.normpath(path)
:规范化路径。
import os
path = '/home/user/Documents/../file.txt'
print(os.path.normpath(path)) # /home/user/file.txt
os.path.realpath(path)
:返回路径的真实路径。
import os
path = '/home/user/Documents/file.txt'
print(os.path.realpath(path)) # /home/user/Documents/file.txt
os.path.relpath(path[, start])
:返回从start路径到path的相对路径。
import os
path = '/home/user/Documents/file.txt'
start = '/home/user'
print(os.path.relpath(path, start)) # Documents/file.txt
os.path.samefile(path1, path2)
:判断两个路径是否指向同一个文件。os.path.sameopenfile(fp1, fp2)
:判断两个文件描述符是否指向同一个文件。os.path.samestat(stat1, stat2)
:判断两个stat结构是否指向同一个文件。os.path.split(path)
:返回路径的目录和文件名组成的元组。
import os
path = '/home/user/Documents/file.txt'
print(os.path.split(path)) # ('/home/user/Documents', 'file.txt')
os.path.splitext(path)
:分离路径中的文件名和扩展名。
import os
path = '/home/user/Documents/file.txt'
print(os.path.splitext(path)) # ('/home/user/Documents/file', '.txt')
os.path.supports_unicode_filenames
:判断操作系统是否支持Unicode文件名。
至此,我们学到了os.path
库的用法。