0

我在特定目录中有很多文件,我想在文件创建日期之后重命名所有扩展名为 .txt 的文件并添加一个计数器前缀。顺便说一句,我在 Windows 上使用 python。

例子:

假设我有文件aaa.txt,bbb.txtccc.txt.

aaa.txt是最新的文件,ccc.txt也是最早创建的文件。

我想以这种方式重命名文件:

999_aaa.txt, 998_bbb.txt, 997_ccc.txt ...

计数器应该从 999_newest 文件开始(我永远不会有超过 300 个 txt 文件)。如您所见,我只想为最新文件提供最高编号(按创建日期排序)。

你会怎么做?

4

1 回答 1

2

看看这个未经测试的代码:

import os
import glob
import shutil

# get a list of all txt files
fnames = glob.glob("*.txt")
# sort according to time of last modification/creation (os-dependent)
# reverse: newer files first
fnames.sort(key=lambda x: os.stat(x).st_ctime, reverse=True)
# rename files, choose pattern as you like
for i, fname in enumerate(fnames):
    shutil.move(fname, "%03d_%s" % (999-i, fname))

以供参考:

于 2013-09-13T11:26:35.213 回答