有没有一种简单的方法可以使用Python重命名目录中已包含的一组文件?
示例: 我有一个充满* .doc文件的目录,我想以一致的方式重命名它们。
X.doc->“ new(X).doc” Y.doc->“ new(Y).doc”
X.doc->“ new(X).doc”
Y.doc->“ new(Y).doc”
这样的重命名非常容易,例如使用os和glob模块:
import glob, os def rename(dir, pattern, titlePattern): for pathAndFilename in glob.iglob(os.path.join(dir, pattern)): title, ext = os.path.splitext(os.path.basename(pathAndFilename)) os.rename(pathAndFilename, os.path.join(dir, titlePattern % title + ext))
然后可以在示例中使用它,如下所示:
rename(r'c:\temp\xx', r'*.doc', r'new(%s)')
上面的示例会将dir中的所有*.doc文件都转换c:\temp\xx为new(%s).doc,其中%s是文件的先前基本名称(不带扩展名)。
*.doc
c:\temp\xx
new(%s).doc
%s