好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Python批量修改文件名实例操作分享

此处以修改图片文件名为例,将图片复制到新的目录中再修改名称~

原始文件名如下:

修改后的效果如下:

代码:

实现将 one 文件夹中的每一个图片复制到two文件夹并修改图片名为按照a、b、c、d递增排序

思路: 重命名为新建一个文件将原来文件内容复制过去

import os
?
def alterFileName(source,target):
? ? print("当前文件夹下有以下几个文件>>>")
? ? file_list=os.listdir(source)
? ? print(file_list)
? ? os.mkdir(target)
? ? print(os.getcwd()) ?# 获取当前目录
? ? os.chdir(source) ? ?# 此处不修改目录的话,打开原始文件的那一步需要在文件名前面加上绝对路径
? ? print(os.getcwd())
? ? ch='a'
? ? for file in file_list:
? ? ? ? name_list=file.rpartition('.') # 将文件名字符串按照'.'切片
? ? ? ? t_name=target+'/'+ch+name_list[1]+name_list[2]
? ? ? ? print(t_name)
? ? ? ? f1=open(file,'rb')
? ? ? ? f2=open(t_name,'wb')
? ? ? ? while True:
? ? ? ? ? ? content=f1.read(1024) ? # 一次读取1KB
? ? ? ? ? ? if content==b'':
? ? ? ? ? ? ? ? print(f"第{ord(ch)-96}张图片复制完毕>>>")
? ? ? ? ? ? ? ? ch=chr(ord(ch)+1)
? ? ? ? ? ? ? ? f1.close()
? ? ? ? ? ? ? ? f2.close()
? ? ? ? ? ? ? ? break
? ? ? ? ? ? f2.write(content)
? ? else:
? ? ? ? print(f"{len(file_list)}张图片已经全部复制到了{target}文件夹下!")
?
?
if __name__ == '__main__':
? ? source_dir="D:\\PyProjects\\one" ? ?# 用\\或者/均可
? ? target_dir="D:/PyProjects/two"
? ? alterFileName(source_dir,target_dir)

运行效果:

到此这篇关于Python批量修改文件名实例操作分享的文章就介绍到这了,更多相关Python批量修改文件名内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

查看更多关于Python批量修改文件名实例操作分享的详细内容...

  阅读:44次