欢迎访问宙启技术站
智能推送

利用pathlib2模块在Python中获取文件和目录的属性

发布时间:2023-12-24 02:50:38

pathlib2是一个Python模块,是pathlib的扩展版本。它提供了一种简化的方式来操作文件路径和文件系统。通过使用pathlib2模块,我们可以轻松地获取文件和目录的属性。

1. 获取文件和目录的路径

可以使用Path对象的属性来获取文件和目录的路径,如下所示:

from pathlib2 import Path

file_path = Path('path/to/file.txt')
dir_path = Path('path/to/directory')

print(file_path)  # 输出:path/to/file.txt
print(dir_path)   # 输出:path/to/directory

2. 判断文件和目录是否存在

可以使用Path对象的exists()方法来判断文件和目录是否存在,如下所示:

from pathlib2 import Path

file_path = Path('path/to/file.txt')
dir_path = Path('path/to/directory')

print(file_path.exists())  # 输出:True 或 False
print(dir_path.exists())   # 输出:True 或 False

3. 获取文件和目录的大小

可以使用Path对象的stat()方法来获取文件和目录的大小,如下所示:

from pathlib2 import Path

file_path = Path('path/to/file.txt')
dir_path = Path('path/to/directory')

print(file_path.stat().st_size)  # 输出:文件大小(字节数)
print(dir_path.stat().st_size)   # 输出:目录大小(字节数)

4. 获取文件和目录的创建时间和修改时间

可以使用Path对象的stat()方法来获取文件和目录的创建时间和修改时间,如下所示:

from pathlib2 import Path
import time

file_path = Path('path/to/file.txt')
dir_path = Path('path/to/directory')

created_time = time.ctime(file_path.stat().st_ctime)
modified_time = time.ctime(file_path.stat().st_mtime)

print('文件创建时间:', created_time)
print('文件修改时间:', modified_time)

created_time = time.ctime(dir_path.stat().st_ctime)
modified_time = time.ctime(dir_path.stat().st_mtime)

print('目录创建时间:', created_time)
print('目录修改时间:', modified_time)

5. 获取文件和目录的权限

可以使用Path对象的stat()方法来获取文件和目录的权限,如下所示:

from pathlib2 import Path

file_path = Path('path/to/file.txt')
dir_path = Path('path/to/directory')

print(oct(file_path.stat().st_mode)[-3:])  # 输出:文件权限(八进制表示)
print(oct(dir_path.stat().st_mode)[-3:])   # 输出:目录权限(八进制表示)

这是使用pathlib2模块在Python中获取文件和目录的属性的几个例子。通过pathlib2模块,我们可以轻松地获取文件和目录的路径、判断文件和目录是否存在、获取文件和目录的大小、创建时间、修改时间和权限。这使得我们能够更方便地对文件和目录进行操作和管理。