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

Python中如何根据路径获取文件的修改时间

发布时间:2023-12-27 17:22:10

在Python中,我们可以使用os.path模块下的getmtime()函数来获取文件的修改时间。getmtime()函数接受一个文件路径作为参数,并返回一个表示修改时间的浮点数,表示从1970年1月1日到文件最近一次修改的秒数。

以下是一个示例程序,演示了如何获取文件的修改时间:

import os.path
import time

def get_file_modified_time(file_path):
    # 检查文件是否存在
    if not os.path.exists(file_path):
        print("文件不存在")
        return

    # 获取文件的修改时间
    modified_time = os.path.getmtime(file_path)

    # 将浮点数修改时间转换为可读格式
    modified_time_str = time.ctime(modified_time)

    # 打印修改时间
    print("文件修改时间:", modified_time_str)

# 调用示例
get_file_modified_time("example.txt")

在这个示例中,我们首先检查了文件是否存在,如果文件不存在,则返回一个错误消息。然后,我们使用os.path.getmtime()函数获取文件的修改时间,将其存储为浮点数。最后,我们使用time.ctime()函数将浮点数修改时间转换为可读格式,并打印出来。

请注意,getmtime()函数返回的是从1970年1月1日至文件最近修改时间的秒数,并且这个时间是操作系统特定的,可能会稍有不同。如果你需要比较文件的修改时间,可以将其转换为一个固定的格式,例如使用time.strftime()函数。以下是一个示例程序,将文件的修改时间转换为指定格式的字符串:

import os.path
import time

def get_file_modified_time(file_path):
    # 检查文件是否存在
    if not os.path.exists(file_path):
        print("文件不存在")
        return

    # 获取文件的修改时间
    modified_time = os.path.getmtime(file_path)

    # 将修改时间转换为指定格式的字符串
    modified_time_str = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(modified_time))

    # 打印修改时间
    print("文件修改时间:", modified_time_str)

# 调用示例
get_file_modified_time("example.txt")

在这个示例中,我们使用time.strftime()函数将浮点数修改时间转换为指定格式的字符串。strftime()函数接受两个参数, 个参数是一个格式字符串,用于指定输出的日期时间格式,第二个参数是一个时间元组,表示要格式化的时间。time.localtime()函数将浮点数时间转换为时间元组。

上述示例程序将文件的修改时间格式化为类似于"2022-01-01 12:34:56"的字符串格式。

总结起来,根据路径获取文件的修改时间可以通过os.path.getmtime()函数来实现,然后可以通过time.ctime()time.strftime()函数将修改时间转换为可读格式。