问题描述
Filename_Old | Filename_New
Jean1_Aspect_Six.jpg | Jean1_Aspect_Six_New.jpg
Jean2_Aspect_Five.jpg | Jean2_Aspect_Ratio_TN.jpg
Jean1_Table_P2.jpg | Jean1_Table_TN.jpg
Jas_Snail_P3.png | Jas_P3_TN.png
我有一千多张图片,需要使用此方法重命名。可以使用python完成吗?非常感谢。
解决方法
您可以使用zip
遍历成对的相应项目:
import os
for old,new in zip(df['Filename_Old'],df['Filename_New']):
os.rename(old,new)
由于您正在批处理大量文件,因此可能值得进行try
,这样,如果其中一个重命名失败(例如,其中一个文件已被重命名),它就不会停止整个操作。例如:
for old,df['Filename_New']):
try:
os.rename(old,new)
except OSError as exc:
print(f'WARNING: could not rename {old} to {new}: {exc}')
else:
print(f'renamed {old} to {new}')
请注意,我要问的问题是指CSV文件的原始内容如下:
Filename_Old,Filename_New
Jean1_Aspect_Six.jpg,Jean1_Aspect_Six_New.jpg
Jean2_Aspect_Five.jpg,Jean2_Aspect_Ratio_TN.jpg
Jean1_Table_P2.jpg,Jean1_Table_TN.jpg
Jas_Snail_P3.png,Jas_P3_TN.png
,并且您已使用以下内容阅读过它:
import pandas as pd
df = pd.read_csv("your_file.csv")