首页 > 数据库 > 数据库开发技术 > Python路径操作模块pathlib的使用
在Python中,处理文件路径和文件系统的操作通常需要使用os模块,前面已经介绍了os模块的基础使用。
Python 3.4版本引入了一个新的模块:pathlib。这个模块提供了一种面向对象的方式来处理文件路径和文件系统。本文介绍这个模块的基础使用

Pathlib是Python自带的库,首先直接导入该模块:
from pathlib import Path
创建一个Path对象可以使用Path()函数。这个函数可以接收一个字符串作为参数,这个字符串代表了你想要访问的路径。例如:
from pathlib import Path
p = Path("abc/abc.txt")
Path对象有许多方法和属性,可以获取关于路径的信息。例如:
# 获取路径的基本信息
print(p.name) # 输出:example.txt
print(p.stem) # 输出:example
print(p.suffix) # 输出:.txt
print(p.suffixes) # 输出:['.txt']
可以使用Path对象的with_suffix()方法来改变路径的后缀:
new_p = p.with_suffix('.bak') # 新路径的后缀为.bak
print(new_p) # 输出:abc/abc.bak
Pathlib还支持文件系统操作,例如创建目录和删除文件等。例如:
p = Path('/tmp/testdir')
if not p.exists():
p.mkdir() # 创建目录
我们可以使用Pathlib来搜索特定类型的文件。例如,如果我们想在某个目录及其子目录中查找所有的.txt文件,可以使用rglob()方法:
import pathlib
p = pathlib.Path('.') # 从当前目录开始搜索
for file in p.rglob('*.txt'): # 查找所有的.txt文件
print(file)
Pathlib不仅可以用来查找文件,还可以用来读取、写入和修改文件。
with open(p, 'r') as f: # 以读模式打开文件
content = f.read() # 读取文件内容
print(content) # 打印文件内容
f.write('Hello, world!') # 写入文件内容
使用open()函数时,需要显式地指定模式(读模式、写模式或追加模式)。而使用Path对象的read_text()和write_text()方法时,模式是隐式的。
content = p.read_text() # 读取文件内容,如果文件不存在则抛出File
p.write_text('Hello, world!') # 写入文件内容,如果文件不存在则创建一个新文件,如果文件已存在则覆盖原有内容
除了可以用来处理文件之外,Pathlib还可以用来进行路径操作。例如,可以使用joinpath()方法来拼接路径:
p1 = Path('/home/user')
p2 = Path('documents')
p3 = Path('example.txt')
full_path = p1.joinpath(p2, p3) # 输出:/home/user/documents/example.txt,
Pathlib是Python中一模块,提供了一种面向对象的方式来处理文件路径和文件系统。
通过使用Pathlib,可以方便地创建、读取、写入和修改文件,以及搜索特定类型的文件。Pathlib还支持跨平台操作,可以在不同操作系统上使用相同的API。
总的来说,Pathlib模块的使用可以大大简化文件操作,提高代码的可读性和可维护性。
原文作者:Python学习杂记;如有侵权,请联系管理员删除。