python读取文件夹的所有图片并重命名
时间: 2023-11-09 20:11:43 浏览: 55
以下是一个示例代码,可以读取文件夹中的所有图片文件,并将其重命名为指定格式:
```python
import os
# 文件夹路径
folder_path = 'path/to/folder'
# 文件名前缀
prefix = 'image'
# 文件名从1开始计数
count = 1
# 循环读取文件夹中的所有文件
for filename in os.listdir(folder_path):
# 判断是否为图片文件
if filename.endswith('.jpg') or filename.endswith('.jpeg') or filename.endswith('.png'):
# 构造新的文件名
new_filename = prefix + str(count) + '.' + filename.split('.')[-1]
# 重命名文件
os.rename(os.path.join(folder_path, filename), os.path.join(folder_path, new_filename))
# 计数器加1
count += 1
```
在上述代码中,我们使用 `os.listdir()` 函数获取文件夹中的所有文件名列表,然后使用 `os.rename()` 函数将每个文件重命名为新的文件名。新的文件名由指定的前缀和计数器构成,同时保留原始文件的扩展名。
相关问题
python读取文件夹下的图片并累加改名
可以使用Python的os和shutil库来读取文件夹下的图片并重命名。
首先,需要使用os库来获取文件夹中的所有文件名,可以使用os.listdir()函数实现:
```python
import os
# 文件夹路径
folder_path = './images/'
# 获取文件夹中的所有文件名
file_names = os.listdir(folder_path)
```
接着,使用shutil库中的move()函数来重命名文件。可以使用一个计数器来累加文件名,如下所示:
```python
import os
import shutil
# 文件夹路径
folder_path = './images/'
# 获取文件夹中的所有文件名
file_names = os.listdir(folder_path)
# 计数器
count = 1
# 遍历文件夹中的所有文件
for file_name in file_names:
# 文件路径
file_path = os.path.join(folder_path, file_name)
# 新文件名
new_file_name = str(count) + '.jpg'
# 新文件路径
new_file_path = os.path.join(folder_path, new_file_name)
# 重命名文件
shutil.move(file_path, new_file_path)
# 计数器加一
count += 1
```
上述代码中,使用os.path.join()函数来拼接文件路径和新文件名,使用shutil.move()函数来重命名文件。
python读取文件夹下的图片并排序改名
可以使用Python自带的os和shutil模块来实现读取文件夹下的图片并排序改名。
首先,使用os模块的listdir函数获取目标文件夹下所有的文件名,并用sorted函数进行排序。然后,遍历文件名列表,使用shutil模块的move函数将文件移动到新的文件夹下,并使用字符串格式化操作改变文件名。
以下是一个示例代码:
```python
import os
import shutil
# 定义原始文件夹和目标文件夹路径
src_folder = r'path/to/src_folder'
dst_folder = r'path/to/dst_folder'
# 获取原始文件夹下所有文件名,并进行排序
files = sorted(os.listdir(src_folder))
# 遍历文件名列表,进行文件移动和重命名
for i, file in enumerate(files):
# 判断文件是否为图片文件
if file.endswith('.jpg') or file.endswith('.png'):
# 定义新的文件名
new_name = f'image_{i:03d}.jpg'
# 移动文件并重命名
shutil.move(os.path.join(src_folder, file), os.path.join(dst_folder, new_name))
```
这段代码将原始文件夹中所有以“.jpg”或“.png”结尾的图片文件重命名为“image_xxx.jpg”,并按照文件名的数字序号进行排序后移动到目标文件夹中。其中“:03d”表示输出数字序号时总共占3位,不足的位数用0进行填充。