0

我正在尝试使用 glob 和 os 模块重命名一堆文件,但我没有得到任何结果。我已经寻找了一些解决方案,但没有找到任何解决方案。“当该文件已存在时无法创建该文件。”。

如果我让它工作,我不确定如何重命名多个项目,比如我有三张图片,分别名为 img_1001、img_1002 和 img_1003。我如何将这些重命名为:picture_1、picture_2 和 picture_3。

这是我目前的代码。

import os
import glob

x = glob.glob(r"C:\Users\Verzo\Desktop\New folder\*.txt")

for filename in x:
    os.rename(filename, "Picture ")
4

2 回答 2

1
    for filename in x:
        os.rename(filename, "Picture ")

该脚本正在尝试将该列表中的每个文件重命名为Picture. 正如您所发现的,这将不起作用。

以下代码未经测试。

    import os
    from glob import glob

    for number, filename in enumerate(glob(r"C:\Users\Verzo\Desktop\New folder\*.txt")):
        try:
            os.rename(filename, "Picture_{0}".format(number))
        except OSError as e:
            print("Something happened:", e)
于 2012-09-09T20:01:14.270 回答
0

类似的东西(未经测试)

import os
import glob

x = glob.glob(r"C:\Users\Verzo\Desktop\New folder\*.txt")

for filename in x:
    name, num = filename.split('_')
    num = int(num)
    os.rename(filename, 'picture_%d' % num)
于 2012-09-09T05:00:07.590 回答