python如何按順序批量修改文件名
python按順序批量修改文件名
在之前批量修改文件名的時候出現(xiàn)的問題是使用os.listdir出現(xiàn)亂序,即修改文件名的時候不按照文件排列的順序,導(dǎo)致了不必要的麻煩。
os.listdir排列的順序是按照例如:1,10,11,2,20,21…的順序想達(dá)到的正常順序:1,2,3,4,5…
解決代碼
import os
#設(shè)定文件路徑
path='C:/Users/Louise喵/Desktop/FOV60/'
#獲取該目錄下所有文件,存入列表中
fileList=os.listdir(path)
#get_key是sorted函數(shù)用來比較的元素,該處用lambda表達(dá)式替代函數(shù)。
get_key = lambda i : int(i.split('.')[0])
new_sort = sorted(fileList, key=get_key)
#print(fileList, '\n', new_sort)
n = 0
for i in fileList:
# 設(shè)置舊文件名(就是路徑+文件名)
oldname = path + os.sep + new_sort[n] # os.sep添加系統(tǒng)分隔符
# 設(shè)置新文件名
newname = path + os.sep + 'p' + str(n + 1)+'.csv'
os.rename(oldname, newname) # 用os模塊中的rename方法對文件改名
print(oldname, ' ======> ', newname)
n += 1其中排序的關(guān)鍵語句為:
get_key = lambda i : int(i.split('.')[0])
new_sort = sorted(fileList, key=get_key)split()是一個常用的分隔字符的方法,split(‘.’)[0]表示以 .進(jìn)行分隔取.前面的內(nèi)容。
運行結(jié)果:


python批量按順序遞增修改文件名代碼(可指定文件名)
如需在文件名添加其它相應(yīng)字符,修改代碼相應(yīng)字符部分即可,此方法比較簡單,容易理解。
import os
# 設(shè)置要重命名的文件夾路徑
folder_path = 'C:/Users/Administrator/Desktop/CR/RGB三通道'
# 獲取文件夾中所有文件名
file_names = os.listdir(folder_path)
# 設(shè)置起始編號
start_num = 1
# 遍歷文件名列表并修改文件名
for file_name in file_names:
# 獲取文件名的后綴
file_extension = os.path.splitext(file_name)[1]
# 構(gòu)造新的文件名
new_file_name = str(start_num) + file_extension
#也可在此處添加相應(yīng)的字符,有區(qū)別重命名文件
#new_file_name = "相應(yīng)字符"+str(start_num) + file_extension
# 構(gòu)造舊文件的路徑和新文件的路徑
old_file_path = os.path.join(folder_path, file_name)
new_file_path = os.path.join(folder_path, new_file_name)
# 重命名文件
os.rename(old_file_path, new_file_path)
print(f'{file_name}已重命名為{new_file_name}')
# 遞增編號
start_num += 1總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python讀取mat(matlab數(shù)據(jù)文件)并實現(xiàn)畫圖
這篇文章主要介紹了Python讀取mat(matlab數(shù)據(jù)文件)并實現(xiàn)畫圖問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-12-12
對pandas進(jìn)行數(shù)據(jù)預(yù)處理的實例講解
下面小編就為大家分享一篇對pandas進(jìn)行數(shù)據(jù)預(yù)處理的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-04-04
Python對口紅進(jìn)行數(shù)據(jù)分析來選定情人節(jié)禮物
情人節(jié)送小仙女什么禮物?讓我們來用Python對口紅進(jìn)行數(shù)據(jù)分析,那個女孩子會拒絕這樣精心挑選的禮物,感興趣的小伙伴快來看看吧2022-02-02

