今天整理云备份资料,发现下载的资料的文件名太长了,导致重要信息被隐藏,于是本人决定重新处理一下文件名。
读取文件名
import os
dirfile_name='/Users/wushuhui/Nutstore Files/workPlaceForevery/学习资料/CSDN视觉课件/' # 文件所在目录
filename_list = os.listdir(dirfile_name)
for filename in filename_list:
print(str(filename))
我们使用os包来导入文件,使用listdir遍历指定文件地址内的所有文件。
分析文件名
我们发现文件名的格式大致为:
020109464524_5图像处理与分析篇3-4图像平滑滤波实战演练.pdf
而我想要的是:
3-4图像平滑滤波实战演练.pdf
查找文件名
我们不难发现有很多种方法来检索我们需要的部分,比如在这里,我只需要查找到"-"所在的位置为pre_start,然后位置start=pre_start-1即可。
代码如下:
import os
dirfile_name='/Users/wushuhui/Nutstore Files/workPlaceForevery/学习资料/CSDN视觉课件/' # 文件所在目录
filename_list = os.listdir(dirfile_name)
for filename in filename_list:
strlen = str.__len__(filename)
pre_start = str.find(filename, "-") # 搜索字符'-'位置,设该位置pre_start
start = pre_start-1
final_filename = filename[start:]
print('最终文件名:' + final_filename)
修改文件名
使用os.rename()修改文件名
import os
dirfile_name='/Users/wushuhui/Nutstore Files/workPlaceForevery/学习资料/CSDN视觉课件/' # 文件所在目录
filename_list = os.listdir(dirfile_name)
for filename in filename_list:
strlen = str.__len__(filename)
pre_start = str.find(filename, "-") # 搜索字符'-'位置,设该位置pre_start
start = pre_start-1
final_filename = filename[start:]
print('最终文件名:' + final_filename)
os.rename(dirfile_name + filename, dirfile_name + final_filename)
我们注意到文件名称已经修改完成: