如何按时间排序文件并重命名它们?

How to sort files by time and also rename them?

我想获取目录中的所有文件 (.txt),按时间排序,然后使用 python

重命名为 name1,name2,...

这是我尝试过的:

import os
def rename (directory):
    os.chdir(directory)  
    result = sorted (filter (os.path.isfile, os.listdir('.')), key-os.path.getmtime)
        ('\n'.join(map(str, result)))
        os.rename (name, "0"+name)

path=input("Enter the file path")
rename(path)

这是一种方法:

def rename(directory):
    os.chdir(directory)
    num = 1
    for file in [file for file in sorted(os.listdir(), key=os.path.getctime) if os.path.splitext(file)[1] == ".txt"]:
        if os.path.splitext(file)[1] == ".txt":
            os.rename(file, f"name{num}.txt")
            num += 1

我们使用 sorted() 按最后修改日期对文件进行排序,使用 os.path.getctime()

为了获取文件的扩展名,我们使用了os.path.splitext()