python获得文件创建时间和修改时间的方法

在Python中 , 获取文件的创建时间和修改时间是非常常见的操作 。文件的创建时间和修改时间通常是我们需要了解的基本信息 , 常用于文件管理、备份和监控等场景中 。本文将从多个角度分析Python获得文件创建时间和修改时间的方法 , 希望对读者有所帮助 。
一、使用os模块获取文件的创建时间和修改时间

python获得文件创建时间和修改时间的方法

文章插图
在Python中 , 我们可以使用os模块来获取文件的创建时间和修改时间 。os模块是Python的一个标准库 , 提供了与操作系统交互的接口 , 包括文件操作、进程管理、环境变量等功能 。下面是使用os模块获取文件的创建时间和修改时间的示例代码:
```python
【python获得文件创建时间和修改时间的方法】import os
import time
# 获取文件的创建时间和修改时间
file_path = 'test.txt'
create_time = os.path.getctime(file_path)
modify_time = os.path.getmtime(file_path)
# 转换为本地时间格式
create_time_local = time.localtime(create_time)
modify_time_local = time.localtime(modify_time)
# 打印结果
print('文件创建时间:', time.strftime('%Y-%m-%d %H:%M:%S', create_time_local))
print('文件修改时间:', time.strftime('%Y-%m-%d %H:%M:%S', modify_time_local))
```
在上面的代码中 , 我们使用了os模块的getctime()和getmtime()方法来分别获取文件的创建时间和修改时间 。这两个方法返回的是Unix时间戳 , 需要使用time模块的localtime()方法将其转换为本地时间格式 , 再使用strftime()方法将其格式化为字符串输出 。
二、使用pathlib模块获取文件的创建时间和修改时间
除了os模块 , 我们还可以使用pathlib模块来获取文件的创建时间和修改时间 。pathlib模块是Python 3.4版本之后新增的一个模块 , 提供了一种面向对象的路径操作方式 。下面是使用pathlib模块获取文件的创建时间和修改时间的示例代码:
```python
from pathlib import Path
import time
# 获取文件的创建时间和修改时间
file_path = Path('test.txt')
create_time = file_path.stat().st_ctime
modify_time = file_path.stat().st_mtime
# 转换为本地时间格式
create_time_local = time.localtime(create_time)
modify_time_local = time.localtime(modify_time)
# 打印结果
print('文件创建时间:', time.strftime('%Y-%m-%d %H:%M:%S', create_time_local))
print('文件修改时间:', time.strftime('%Y-%m-%d %H:%M:%S', modify_time_local))
```
在上面的代码中 , 我们使用了pathlib模块的Path类来表示文件路径 , 并使用stat()方法获取文件的状态信息 。文件的状态信息包括创建时间、修改时间、文件大小等信息 , 可以通过st_ctime和st_mtime属性获取 。同样需要使用time模块将Unix时间戳转换为本地时间格式 。
三、使用os.path模块获取文件的创建时间和修改时间
除了os和pathlib模块 , 我们还可以使用os.path模块来获取文件的创建时间和修改时间 。os.path模块是os模块的一个子模块 , 提供了一些操作文件路径的函数 。下面是使用os.path模块获取文件的创建时间和修改时间的示例代码:
```python
import os
import time
# 获取文件的创建时间和修改时间
file_path = 'test.txt'
create_time = os.path.getctime(file_path)
modify_time = os.path.getmtime(file_path)
# 转换为本地时间格式
create_time_local = time.localtime(create_time)
modify_time_local = time.localtime(modify_time)

推荐阅读