Python如何對文件進行重命名
對文件進行重命名
直接貼代碼:
import os
srcFile = './actwork/linkFile/allExtLinks - 副本.txt'
dstFile = './actwork/linkFile/allExtLinks - copy.txt'
try:
? ? os.rename(srcFile,dstFile)
except Exception as e:
? ? print(e)
? ? print('rename file fail\r\n')
else:
? ? print('rename file success\r\n')對文件夾下文件按順序重命名
在處理機器學習的圖片時,需要將圖片根據類別放入不同文件夾中,在文件夾下也想將圖片用數字遞增重命名一下,方便后續(xù)處理。
首先,我們看一下python的重命名函數:
os.rename(src,dst)
src:要修改的目錄名dst:修改后的目錄名
如果dst是一個存在的目錄, 將拋出OSError。
注意:src和dst都是完整路徑+文件名
首先,我們先對文件夾重命名
先使用最簡單的方法嘗試一下
import os def myrename(path): ? ? file_list=os.listdir(path) ? ? i=0 ? ? for fi in file_list: ? ? ? ? old_name=os.path.join(path,fi) ? ? ? ? new_name=os.path.join(path,str(i)) ? ? ? ? os.rename(old_name,new_name) ? ? ? ? i+=1 if __name__=="__main__": ? ? path="D:/test/121" ? ? myrename(path)

我們就可以看到文件夾已經按照順序重命名了
稍微改動一下,顯得沒有那么low
import os
def myrename(path):
file_list=os.listdir(path)
for i,fi in enumerate(file_list):
old_name=os.path.join(path,fi)
new_name=os.path.join(path,"N0."+str(i))
os.rename(old_name,new_name)
if __name__=="__main__":
path="D:/test/121"
myrename(path)
效果是一樣的,enumerate函數的作用就不再贅述了,我們還可以使用python zip來進行修改:
import os
def myrename(path):
file_list=os.listdir(path)
for i,fi in zip(range(len(file_list)),file_list):
old_name=os.path.join(path,fi)
new_name=os.path.join(path,"The."+str(i))
os.rename(old_name,new_name)
if __name__=="__main__":
path="D:/test/121"
myrename(path)效果一樣:

接下來我們對文件進行重命名
上面的三種方法都是可以使用的,只需要稍微改動一下,我以函數enumerate為例演示一下:

先建一個文本文檔
復制粘貼一堆,作為測試用,在函數中加入一個try-except,防止文件重命名出錯,這里重命名需要是相同格式的文件,否則就會報錯:
import os
def myrename(path):
file_list=os.listdir(path)
for i,fi in enumerate(file_list):
old_dir=os.path.join(path,fi)
filename="my"+str(i+1)+"."+str(fi.split(".")[-1])
new_dir=os.path.join(path,filename)
try:
os.rename(old_dir,new_dir)
except Exception as e:
print(e)
print("Failed!")
else:
print("SUcess!")
if __name__=="__main__":
path="D:/test/121"
myrename(path)
代碼都是很簡單的,入門小白,這里列舉的也是最簡單的方法。這些僅為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
在服務器上安裝python3.8.2環(huán)境的教程詳解
這篇文章主要介紹了在服務器上安裝python3.8.2環(huán)境的教程詳解,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-04-04

