给图片批量按照顺序重命名

1.代码部分解释

首先,设置需要文件夹的路径,图片的拓展名可以根据实际需求进行修改

# 设置图片文件夹路径
image_folder = " "
extension = ".jpg"  # 图片扩展名

 2.获取文件夹里面所有的图片文件&并对图片进行排序

# 获取图片文件夹中的所有图片文件
image_files = [file for file in os.listdir(image_folder) if file.endswith(extension)]

# 排序图片文件列表
image_files.sort()

 列表推导语法(List Comprehension):从指定的文件夹中获取所有文件的列表

os.listdir(image_folder):调用os模块中的listdir,接受文件的路径作为参数,并返回该文件夹所有的文件与子文件夹的列表

file for file in os.listdir(image_folder):这是列表推导的一部分,它在从文件夹中获取的所有文件和子文件夹列表中遍历每个元素,并将它们称为file

这个列表推导来获取指定文件夹中所有图片文件的列表。通过在列表推导中添加条件,我们可以过滤出特定扩展名(例如 .jpg)的文件

image_files.sort()是按照默认的图片命名方式进行排序:

例如:3.jpg、2.jpg、1.jpg——>1.jpg、2.jpg、3.jpg

image3.jpg、image2.jpg、image1.jpg——>image1.jpg、image2.jpg、image3.jpg

3.遍历图片文件按照顺序进行重命名

# 遍历图片文件并按顺序进行重命名
for index, image_file in enumerate(image_files, start=1):
    old_path = os.path.join(image_folder, image_file)
    new_filename = f"{index}{extension}"
    new_path = os.path.join(image_folder, new_filename)
    os.rename(old_path, new_path)
    print(f"Renamed {image_file} to {new_filename}")

for的循环语句,用来遍历image_files列表中的元素;enumerate():接受的对象有两个,列表中的图片元素&设置从1开始的参数;综上,这个循环会遍历列表里面的图片元素,然后每个图片分配一个从1开始的索引值

os.path.join:用于将多个路径组合在一起,创建完整的路径;folder:存放图片的文件夹;iamge_file:文件夹的名字;综上,用于定位图片文件的原始路径,为接下来操作使用;old_path与new_path同理

f-string格式化字符串:将索引号喝文件扩展名连接起来创建新的文件名

os,rename():对文件进行重命名,把old中的文件重命名为new指定的路径和文件名

f-string格式化字符串:非常好用,{}里面插入变量的值,最后在终端上显示出来

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 下面是一个可以按照文件顺序重命名图片Python代码示例: ```python import os # 获取文件夹中所有图片文件名 folder = 'your_folder_path' img_files = [f for f in os.listdir(folder) if f.endswith('.jpg') or f.endswith('.png')] # 按文件名排序 img_files.sort() # 重命名图片文件 for i, file_name in enumerate(img_files): # 构造新的文件名 new_name = '{:03d}.jpg'.format(i) # 重命名文件 os.rename(os.path.join(folder, file_name), os.path.join(folder, new_name)) ``` 在这个示例中,首先获取指定文件夹中所有以`.jpg`或`.png`结尾的图片文件名,并按照文件名排序。然后,循环遍历每个文件名,根据其在文件列表中的索引值,构造新的文件名。最后使用`os.rename()`函数将原始文件名更改为新的文件名。注意,在这个示例中,新的文件名采用了三位数字的格式(例如,`001.jpg`、`002.jpg`等),以确保它们按照正确的顺序排序。 ### 回答2: 下面是一个生成按照文件顺序重命名图片Python代码示例: ```python import os # 获取要重命名图片文件夹路径 folder_path = '图片文件夹路径' # 获取文件夹中所有图片文件名 file_names = os.listdir(folder_path) # 按照文件名的顺序排序 file_names.sort() # 遍历所有图片文件 for i, file_name in enumerate(file_names): # 构造新的文件名 new_name = '图片' + str(i+1) + '.jpg' # 构造图片的完整路径 old_path = os.path.join(folder_path, file_name) new_path = os.path.join(folder_path, new_name) # 重命名图片文件 os.rename(old_path, new_path) print('图片重命名完成') ``` 上述代码中,首先需要将`图片文件夹路径`替换为实际的图片文件夹路径。然后通过`os.listdir()`函数获取文件夹中的所有文件名,并将其按照顺序进行排序。之后使用`enumerate()`函数遍历所有文件名,并通过字符串拼接将文件名重命名为"图片"加上对应的顺序号,再调用`os.rename()`函数进行重命名操作。最后打印提示信息,表示图片重命名完成。 ### 回答3: 以下是一个生成按照文件顺序重命名图片Python代码示例: ```python import os import glob # 获取指定文件夹中的所有图片文件 image_folder = '/path/to/images' image_files = glob.glob(os.path.join(image_folder, '*.jpg')) # 可根据需要更改文件类型 # 按照文件顺序重命名图片 for i, image_file in enumerate(image_files): new_image_name = f'image_{i + 1}.jpg' # 生成新的文件名,如image_1.jpg, image_2.jpg, ... new_image_path = os.path.join(image_folder, new_image_name) os.rename(image_file, new_image_path) # 重命名图片文件 ``` 使用此代码,只需将`image_folder`路径更改为包含要重命名图片文件的文件夹路径,然后运行代码即可。代码首先使用`glob`模块获取指定文件夹中所有的图片文件(可以根据需要更改文件类型)。然后,通过循环遍历每个图片文件,生成新的文件名,如`image_1.jpg`,`image_2.jpg`等。最后,利用`os.rename`函数进行文件重命名。 请注意,在运行代码之前最好备份原始图片文件,并确保代码运行时文件夹中只包含要重命名图片文件,以避免不必要的错误。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值