genericpath模块:Python中处理路径的实用工具库
发布时间:2024-01-17 07:44:22
在Python中,我们经常需要处理文件路径。这包括路径拼接、路径分割、获取文件名和扩展名等。为了简化这些操作,Python提供了一个实用工具库——os.path,该库中的主要模块是genericpath。
genericpath模块提供了一些用于处理路径的常用函数,这些函数在不同的操作系统中表现一致,所以被称为“通用路径”。下面我们将介绍genericpath模块的常用函数,并给出使用例子。
1. join(*p):连接两个或多个路径组件,返回一个合并后的路径。如果任何一个组件是绝对路径(从根开始),则之前的所有组件将被丢弃,并以最后一个绝对路径开始。如果所有组件都为空,返回'.',否则返回路径的字符串表示。
import genericpath
# 示例1:拼接路径
path1 = genericpath.join('/usr', 'local', 'bin')
print(path1) # 输出:/usr/local/bin
# 示例2:拼接路径,返回绝对路径
path2 = genericpath.join('/usr', 'local', '/bin')
print(path2) # 输出:/bin
2. split(p):返回路径的目录名和基础文件名。
import genericpath # 示例:分割路径 path = '/usr/local/bin/python' dir_name, base_name = genericpath.split(path) print(dir_name) # 输出:/usr/local/bin print(base_name) # 输出:python
3. basename(p):返回路径的基础文件名。
import genericpath # 示例:获取文件名 path = '/usr/local/bin/python' file_name = genericpath.basename(path) print(file_name) # 输出:python
4. dirname(p):返回路径的目录名。
import genericpath # 示例:获取目录名 path = '/usr/local/bin/python' dir_name = genericpath.dirname(path) print(dir_name) # 输出:/usr/local/bin
5. splitext(p):从路径中分离文件的扩展名。如果没有扩展名,返回('文件名', '')。
import genericpath # 示例1:分离文件扩展名 file_path = '/usr/local/bin/python.exe' file_name, ext = genericpath.splitext(file_path) print(file_name) # 输出:/usr/local/bin/python print(ext) # 输出:.exe # 示例2:没有扩展名 file_path2 = '/usr/local/bin/python' file_name2, ext2 = genericpath.splitext(file_path2) print(file_name2) # 输出:/usr/local/bin/python print(ext2) # 输出:''
6. isdir(s):判断路径是否是一个目录。
import genericpath # 示例:判断路径是否为目录 path = '/usr/local/bin' print(genericpath.isdir(path)) # 输出:True
7. isfile(s):判断路径是否是一个文件。
import genericpath # 示例:判断路径是否为文件 path = '/usr/local/bin/python' print(genericpath.isfile(path)) # 输出:True
以上是genericpath模块中常用的函数。通过这些函数,我们可以轻松地处理文件路径,无论在哪个操作系统中,代码都可以保持一致。
