如何列出某些目录内容的最新修改时间?

2024-06-23 03:07:38 发布

您现在位置:Python中文网/ 问答频道 /正文

假设结构如下所示:

People/
      Jimmy/
           my_Files/
                    work.txt
           report.txt
      Mohammad/
           the_work/
                    something2.sth
                    something2.sth

如您所见,我在人员目录中为每个职员设置了一个目录,每个职员的目录中都有很多文件或目录

我想写一个程序来接收一个日期作为输入,搜索这些目录,并返回哪个职员在该日期之后没有修改过任何文件

我正在使用以下程序列出所有文件:

files_path= list()
for root,dirs,files in os.walk(r"G:\People"):
    for filename in files:
        files_path.append(root+filename)

以及以下程序以接收它们的最后修改时间:

for single_file in files_path:
    print "last modified: %s" % time.ctime(os.path.getmtime(single_file))
    print "created: %s" % time.ctime(os.path.getctime(single_file))

嗯,两者都很好!问题是,我无法管理结果,以获得用户对的可读输出用户上次修改时间

有谁能帮我如何处理它以得到一个rational输出列表吗


Tags: 文件pathin程序目录txtforos
1条回答
网友
1楼 · 发布于 2024-06-23 03:07:38

time.strftime使您可以控制格式:

time.strftime('%H:%M:%S', time.gmtime(os.path.getmtime(single_file)))

一个小的辅助函数:

def format_time(seconds):
    return time.strftime('%H:%M:%S', time.gmtime(seconds))

成功了 更平易近人:

print "last modified: %s, created: %s" %(format_time(os.path.getmtime(single_file)),
                                         format_time(os.path.getctime(single_file)))

输出:

last modified: 13:05:56, created: 13:05:56

相关问题 更多 >

    热门问题