python读取文件属性
时间: 2024-08-15 13:01:42 浏览: 98
在Python中,可以使用内置的`os`模块或者`pathlib`模块来读取文件的属性。
使用`os`模块读取文件属性的方法如下:
```python
import os
# 假设我们要获取的文件路径是 'example.txt'
file_path = 'example.txt'
# 使用os.path.getsize()获取文件大小
file_size = os.path.getsize(file_path)
# 使用os.path.getmtime()获取文件修改时间
file_last_modified = os.path.getmtime(file_path)
# 使用os.stat()获取更详细的信息
stat_result = os.stat(file_path)
# 从stat_result中可以提取出很多信息,例如:
file_mode = stat_result.st_mode
file_size = stat_result.st_size
file_owner = stat_result.st_uid
file_group = stat_result.st_gid
file_device = stat_result.st_dev
file création_time = stat_result.st_ctime
file_access_time = stat_result.st_atime
file_modification_time = stat_result.st_mtime
# 打印获取到的信息
print(f"文件大小: {file_size}")
print(f"文件修改时间: {file_last_modified}")
print(f"文件模式(权限): {file_mode}")
print(f"文件所有者UID: {file_owner}")
print(f"文件所属组GID: {file_group}")
print(f"文件设备ID: {file_device}")
print(f"文件创建时间: {file_creation_time}")
print(f"文件访问时间: {file_access_time}")
print(f"文件最后修改时间: {file_modification_time}")
```
使用`pathlib`模块读取文件属性的方法如下:
```python
from pathlib import Path
# 假设我们要获取的文件路径是 'example.txt'
file_path = Path('example.txt')
# 使用Path对象的stat()方法获取文件属性
stat_result = file_path.stat()
# 从stat_result中可以提取出很多信息,例如:
file_size = stat_result.st_size
file_mode = stat_result.st_mode
file_owner = stat_result.st_uid
file_group = stat_result.st_gid
file_device = stat_result.st_dev
file_creation_time = stat_result.st_ctime
file_access_time = stat_result.st_atime
file_modification_time = stat_result.st_mtime
# 打印获取到的信息
print(f"文件大小: {file_size}")
print(f"文件修改时间: {file_modification_time}")
print(f"文件模式(权限): {file_mode}")
print(f"文件所有者UID: {file_owner}")
print(f"文件所属组GID: {file_group}")
print(f"文件设备ID: {file_device}")
print(f"文件创建时间: {file_creation_time}")
print(f"文件访问时间: {file_access_time}")
print(f"文件最后修改时间: {file_modification_time}")
```
在两个例子中,我们分别使用了`os`模块和`pathlib`模块来读取文件的属性,例如文件大小、修改时间等。`pathlib`是Python 3.4引入的一个新的文件系统路径库,它提供面向对象的文件系统路径操作方法,比传统的`os.path`更加直观和易用。
阅读全文