使用Python批量修改文件名称

下载了一些图片,想要更改其文件的名称。

试了许多方法,都不太理想。

于是想到了使用Python来实现。


需要用到的模块及函数:

import os

rename() 函数用于改变文件或文件夹的名称。它接受两个参数:原文件名和新文件名。

os.rename("oldname.txt""newname.txt")

os.listdir(‘路径’)函数用于返回给定路径下的文件名称列表。

os.listdir('路径')

示例:

myfiles = os.listdir('/home/user/folder')
for f in myfiles:
    print(f)

os.path.join()函数,它可以将多个路径组合成一个路径。

示例:

os.path.join('/usr/bin', 'python3')

运行结果:

'/usr/bin/python3'

file.replace() 函数,它可以用来替换文件内容。

示例:

f = open('file.txt', 'r+') 
f.replace('old_string', 'new_string')

全部代码如下:

import os
path = 'G:漫画红楼梦'
files = os.listdir(path)
i = 1
for picture in files:
    # 旧名称
    old = os.path.join(path, picture)
    # 新名称
    new = picture.replace(picture, '红楼梦' + str(i) + '.png')
    # 加上路径
    new = os.path.join(path, new)
    # 开始修改文件名称
    os.rename(old, new)
    i = i + 1
print('运行完毕')

不足之处:此方法难以按顺序来修改文件的名称。因此修改后的文件名称,其顺序可能不是想要的。

针对这问题,我还没想到很好的解决办法。

当然,一般而言,这么修改也够用了。