python實(shí)現(xiàn)遍歷文件夾圖片并重命名
在做深度學(xué)習(xí)相關(guān)項(xiàng)目時(shí),需要標(biāo)注圖片,篩選過(guò)后圖片名字帶有括號(hào),顯得比較亂,因此利用python進(jìn)行統(tǒng)一規(guī)范重命名操作

實(shí)現(xiàn)方法是利用python的os模塊對(duì)文件夾進(jìn)行遍歷(listdir),然后使用rename進(jìn)行改名操作
代碼如下
# -*- coding:utf8 -*-
import os
class BatchRename():
'''
批量重命名文件夾中的圖片文件
'''
def __init__(self):
self.path = 'C:/Users/lenovo/Desktop/label5/3'
def rename(self):
filelist = os.listdir(self.path)
total_num = len(filelist)
i = 1
for item in filelist:
if item.endswith('.jpg'):
src = os.path.join(os.path.abspath(self.path), item)
dst = os.path.join(os.path.abspath(self.path), '02'+ str(i) + '.jpg')
try:
os.rename(src, dst)
print 'converting %s to %s ...' % (src, dst)
group = 0
except:
continue
if item.endswith('.xml'):
src = os.path.join(os.path.abspath(self.path), item)
dst = os.path.join(os.path.abspath(self.path), '02'+ str(i) + '.xml')
try:
os.rename(src, dst)
print 'converting %s to %s ...' % (src, dst)
group = 1
except:
continue
if group:
i = i + 1
print 'total %d to rename & converted %d jpgs' % (total_num, i)
if __name__ == '__main__':
demo = BatchRename()
demo.rename()
運(yùn)行后效果如下

簡(jiǎn)潔版(tab補(bǔ)全)
# -*- coding:utf8 -*-
import os
path = 'SegmentationClassRaw/'
filelist = os.listdir(path)
for item in filelist:
#print('item name is ',item)
if item.endswith('.png'):
name = item.split('.',3)[0] + '.' + item.split('.',3)[1]
src = os.path.join(os.path.abspath(path),item)
dst = os.path.join(os.path.abspath(path),name + '.png')
try:
os.rename(src,dst)
print('rename from %s to %s'%(src,dst))
except:
continue
參考:利用Python對(duì)文件夾下圖片數(shù)據(jù)進(jìn)行批量改名的代碼實(shí)例
本文已被收錄到專題《python圖片處理操作》 ,歡迎大家點(diǎn)擊學(xué)習(xí)更多精彩內(nèi)容。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Java中MultipartFile與File互轉(zhuǎn)的實(shí)現(xiàn)
本文主要介紹了Java中MultipartFile與File互轉(zhuǎn)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03
python讀取圖像矩陣文件并轉(zhuǎn)換為向量實(shí)例
這篇文章主要介紹了python讀取圖像矩陣文件并轉(zhuǎn)換為向量實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06
Python時(shí)間戳與日期格式之間相互轉(zhuǎn)化的詳細(xì)教程
java默認(rèn)精度是毫秒級(jí)別的,生成的時(shí)間戳是13位,而python默認(rèn)是10位的,精度是秒,下面這篇文章主要給大家介紹了關(guān)于Python時(shí)間戳與日期格式之間相互轉(zhuǎn)化的相關(guān)資料,需要的朋友可以參考下2022-08-08
Python內(nèi)置數(shù)據(jù)類型list各方法的性能測(cè)試過(guò)程解析
這篇文章主要介紹了Python內(nèi)置數(shù)據(jù)類型list各方法的性能測(cè)試過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-01-01
python使用pynput捕獲單個(gè)按鍵的步驟詳解(包括組合鍵和功能鍵)
在數(shù)字時(shí)代,鍵盤是與計(jì)算機(jī)交流的主要工具,鍵盤的每一次敲擊都承載著信息,而在某些場(chǎng)景下,可能需要記錄這些信息,這時(shí)候,pynput庫(kù)就派上了大用場(chǎng),它可以輕松地幫捕獲并記錄鍵盤上的每一個(gè)操作,所以本文給大家介紹了python使用pynput捕獲鍵的操作步驟2024-05-05

