在Python中,pathlib
模块提供了一种面向对象的方式来处理文件系统路径。它将文件系统的路径视为一个对象,使得路径相关的操作(如获取父目录、文件名、扩展名等)变得更加直观和方便。以下是pathlib
模块的一些基本用法:
导入模块
首先,需要导入pathlib
模块中的Path
类:
from pathlib import Path
创建Path对象
可以通过直接传递一个路径字符串给Path
类来创建一个Path
对象:
p = Path('/usr/bin')
也可以使用相对路径:
p = Path('my_directory/my_file.txt')
路径拼接
使用/
操作符可以很方便地进行路径的拼接:
p = Path('/usr')
full_path = p / 'bin' / 'python'
print(full_path) # 输出: /usr/bin/python
获取路径的各个部分
可以通过parts
属性获取路径的各个部分:
p = Path('/usr/bin/python')
print(p.parts) # 输出: ('/', 'usr', 'bin', 'python')
获取父目录
使用parent
属性或parents
属性可以获取路径的父目录:
p = Path('/usr/bin/python')
print(p.parent) # 输出: /usr/bin
print(p.parents[0]) # 输出: /usr/bin
print(p.parents[1]) # 输出: /usr
获取文件名、扩展名
可以使用name
、stem
、suffix
属性获取文件的名称、主名称和扩展名:
p = Path('/usr/bin/python.exe')
print(p.name) # 输出: python.exe
print(p.stem) # 输出: python
print(p.suffix) # 输出: .exe
检查路径存在
使用exists
方法可以检查路径是否存在:
p = Path('/usr/bin/python')
print(p.exists()) # 如果路径存在,输出True;否则,输出False
创建目录
使用mkdir
方法可以创建新目录:
p = Path('new_directory')
p.mkdir(parents=True, exist_ok=True) # 如果父目录不存在,则创建;如果目录已存在,不抛出异常
读写文件
Path
对象提供了read_text
和write_text
方法来简化文件的读写操作:
# 写入文件
p = Path('example.txt')
p.write_text('Hello, pathlib!')
# 读取文件
print(p.read_text()) # 输出: Hello, pathlib!
这只是pathlib
模块的一部分功能。pathlib
提供了非常丰富的方法和属性来处理文件系统路径,使得文件和目录的操作更加直观和方便。