在Python中将图像名称扩展名从.PNG转换为.png

gop*_*pal 0 python

我有大量的.PNG扩展图像(比如image00.PNG).我想将其转换为.png(小写).我从互联网上获得了一个脚本,但无法处理.

这是脚本:

files = os.listdir(cur_dir)
for filename in files:
    file_ext = os.path.splitext(filename)[1]
    if old_ext == file_ext:
        newfile = filename.replace(old_ext, new_ext)
        os.rename(filename, newfile)
Run Code Online (Sandbox Code Playgroud)

当我尝试在终端上运行它时,我收到错误:

NameError: name 'filename' is not defined
Run Code Online (Sandbox Code Playgroud)

可能是什么问题呢?

Céd*_*ien 5

试试这个,它适用于真实(而不是将PNGX.PNG重命名为pngX.png;)):

import os

files = os.listdir(".")
for filename in files:
    file_wo_ext, file_ext = os.path.splitext(filename)
    if file_ext == ".PNG":
        newfile = file_wo_ext + ".png"
        os.rename(filename, newfile)
Run Code Online (Sandbox Code Playgroud)

  • 您还需要使用newfile附加父目录路径,否则它将在重命名过程中将文件移动到当前工作目录. (2认同)