Python 2.7 如何使用Python以运行顺序重命名JPG文件

Python 2.7 如何使用Python以运行顺序重命名JPG文件,python-2.7,file,rename,Python 2.7,File,Rename,我对Python编程非常陌生,我尝试用扩展名“.jpg”重命名100个文件,该扩展名位于使用pyhthon的特定文件夹中 我需要的文件将被重命名的运行顺序从1号开始。这是我开始编写的代码: import os,glob,fnmatch os.chdir(r"G:\desktop\Project\test") for files in glob.glob("*.jpg"): print files 当我运行它时,我得到: >>> er3.jpg IMG-201602

我对Python编程非常陌生,我尝试用扩展名“.jpg”重命名100个文件,该扩展名位于使用pyhthon的特定文件夹中

我需要的文件将被重命名的运行顺序从1号开始。这是我开始编写的代码:

import os,glob,fnmatch

os.chdir(r"G:\desktop\Project\test")
for files in glob.glob("*.jpg"):
    print files
当我运行它时,我得到:

>>> 
er3.jpg
IMG-20160209-ssdeWA0000.jpg
IMG-20160209-WA0000.jpg
sd4.jpg
tyu2.jpg
uj7.jpg
we3.jpg
yh7.jpg
>>> 
所以代码,到目前为止还可以

例如,我的文件夹是:

我需要所有的文件名都是:
1,2,3,4-具有运行订单名称。Python2.7是否可以重命名特定文件夹中的所有JPG文件?首先,获取文件夹中包含的所有文件的列表

将为您列出图像路径中的所有文件

用于获取索引号,以获取的新名称 图像


如果只想将所有文件重命名为
1.jpg
2.jpg
等,可以执行以下操作:

import os
import glob

os.chdir(r"G:\desktop\Project\test")
for index, oldfile in enumerate(glob.glob("*.jpg"), start=1):
    newfile = '{}.jpg'.format(index)
    os.rename (oldfile,newfile)
用于从
glob()
返回的列表中获取每个文件的索引,以便用于创建新文件名。注意,它允许您指定开始索引,因此我从
1
开始,而不是从Python标准的0开始

如果您希望此文件列表能够正确排序,那么您还需要使用零填充文件名(
001.jpg
,等等)。在这种情况下,只需将
newfile='{}.jpg'.format(index)
替换为
newfile='{:03}.jpg'.format(index)


有关排序文件名(glob.glob(“*jpg”))的更多信息,请参见
str.format()

也许?是否可以将其调整为处理jpg和png?@Maverick:当然可以。不幸的是,
glob.glob()
一次只能匹配一个扩展,但是您可以轻松地运行循环两次,用
jpg
替换
png
。还有其他更有效的方法,这在很大程度上取决于您想要的输出。您好,欢迎来到SO!虽然这段代码可以回答这个问题,但提供关于它如何和/或为什么解决问题的附加上下文将提高答案的长期价值。请阅读,然后
import os
import glob

os.chdir(r"G:\desktop\Project\test")
for index, oldfile in enumerate(glob.glob("*.jpg"), start=1):
    newfile = '{}.jpg'.format(index)
    os.rename (oldfile,newfile)
import os
from os import path
os.chdir("//Users//User1//Desktop//newd//pics")

for file in os.listdir():
    name,ext=path.splitext(file)
    if ext == '.jpeg':
        dst= '{}.jpg'.format(name)
        os.rename(file,dst)