在处理图像文件时,为了避免覆盖原始文件并创建新的文件,可以按照以下步骤进行操作。
image_path = 'path_to_image_file.jpg'
import os
file_name, file_extension = os.path.splitext(image_path)
i = 1
new_file_path = f'{file_name}_{i}{file_extension}'
while os.path.exists(new_file_path):
i += 1
new_file_path = f'{file_name}_{i}{file_extension}'
import shutil
shutil.copyfile(image_path, new_file_path)
完整的代码示例如下:
import os
import shutil
def avoid_overwriting_image(image_path):
file_name, file_extension = os.path.splitext(image_path)
i = 1
new_file_path = f'{file_name}_{i}{file_extension}'
while os.path.exists(new_file_path):
i += 1
new_file_path = f'{file_name}_{i}{file_extension}'
shutil.copyfile(image_path, new_file_path)
使用示例:
avoid_overwriting_image('path_to_image_file.jpg')
这样,如果存在相同的文件名,则会创建一个新的文件,而不会覆盖原始文件。