最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python批量自動(dòng)修改文件名,按指定的格式自動(dòng)命名方式

 更新時(shí)間:2023年08月17日 08:45:58   作者:Pandas_007  
這篇文章主要介紹了Python批量自動(dòng)修改文件名,按指定的格式自動(dòng)命名方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

問(wèn)題引入

在我們?cè)趯?duì)一個(gè)已經(jīng)排好序的項(xiàng)目進(jìn)行增刪改之后,文件名可能不再連續(xù),有所缺失,這時(shí)我們需要對(duì)所有文件進(jìn)行有序的排序,需要借助Python來(lái)進(jìn)行自動(dòng)獲取所有文件的數(shù)量然后自動(dòng)進(jìn)行排序。

例如我對(duì)某個(gè)文件進(jìn)行刪除后,圖片的命名已經(jīng)不連續(xù)了,需要對(duì)其后面的需要按順序進(jìn)行排列 。

再運(yùn)行完os庫(kù)的代碼后,文件名已經(jīng)變成連續(xù)的了。

如下圖:

OS庫(kù)的方法

  • os.listdir(path)--查看路徑下的所有文件
  • os.rename(舊文件名,新文件名)--用于更改文件名字
  • os.mkdir(path)-在path路徑下創(chuàng)建目錄
  • os.remove(path)--刪除文件
  • os.stat(path)--獲取文件信息,存儲(chǔ)的內(nèi)存大小

只通過(guò)OS來(lái)批量修改文件名

def File_name_sorting(filepath,outpath):
    import os
    alldates=os.listdir(filepath) #獲得路徑中的所有文件
    alldates.sort(key=lambda X : int(X[:-4])) #將文件名按照數(shù)字排序;X[:-4]是取.jpg前面的文件名 作用是屏蔽后綴名.jpg
    for i in range(1,len(alldates)+1):
        filepath=filepath+r'/'#讀入文件的路徑
        os.rename(filepath+str(alldates[i-1]),outpath+str(i)+'.jpg')
if __name__ == '__main__':
    filepath=r'E:\項(xiàng)目\python項(xiàng)目\爬蟲(chóng)\ebird\Larus ridibundus\img2'#需要重命名的路徑
    outpath=r'E:\項(xiàng)目\python項(xiàng)目\爬蟲(chóng)\ebird\Larus ridibundus\img/'#導(dǎo)出的路徑
    File_name_sorting(filepath,outpath)

通過(guò)cv2庫(kù)進(jìn)行批量修改文件名

cv.imwrite(path,file)把每一個(gè)文件取出后再通過(guò)此函數(shù),保存至新的文件名,通過(guò)在其外層添加循環(huán)以此來(lái)達(dá)到批量修改文件名的效果。

代碼如下:

def renamefile_cv(path,imgPath):
    import cv2
    import os
    file_lst = os.listdir(path)
    frame_count=0 #起始的文件名名字 后續(xù)加了1 所以這里設(shè)置為0
    for filename in file_lst:
        frame_count=frame_count+1
        frame=cv2.imread(path + filename)
        print('正在處理第'+ str(frame_count) + '張圖片')
        cv2.imwrite(imgPath + str(frame_count)+'.jpg', frame)
if __name__ == '__main__':
    path=r'E:\項(xiàng)目\python項(xiàng)目\爬蟲(chóng)\ebird\Larus ridibundus\img/'
    imgPath=r'E:\項(xiàng)目\python項(xiàng)目\爬蟲(chóng)\ebird\Larus ridibundus\imges/'
    renamefile_cv(path,imgPath)

常見(jiàn)問(wèn)題:

①讀取不到圖片,路徑全部修改為英文再?lài)L試。

②運(yùn)行了一會(huì)后報(bào)錯(cuò),可能其文件格式不一致,即使它顯示的是jpg,這時(shí)可以自主添加try,except,跳過(guò)本文件,繼續(xù)修改下一個(gè)文件名。

下面是升級(jí)后的代碼:

def renamefile_cv(path,imgPath):
    import cv2
    import os
    file_lst = os.listdir(path)
    frame_count=0 #起始的文件名名字 后續(xù)加了1 所以這里設(shè)置為0
    for filename in file_lst:
        frame_count=frame_count+1
        try:
            frame=cv2.imread(path + filename)
            print('正在處理第'+ str(frame_count) + '張圖片')
            cv2.imwrite(imgPath + str(frame_count)+'.jpg', frame)
        except:
            print("{}存在問(wèn)題".format(filename))
            pass
if __name__ == '__main__':
    path=r'E:\項(xiàng)目\python項(xiàng)目\爬蟲(chóng)\ebird\Larus ridibundus\img/'
    imgPath=r'E:\項(xiàng)目\python項(xiàng)目\爬蟲(chóng)\ebird\Larus ridibundus\imges/'
    renamefile_cv(path,imgPath)

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python 圖片二值化處理(處理后為純黑白的圖片)

    python 圖片二值化處理(處理后為純黑白的圖片)

    這篇文章主要介紹了python 圖片二值化處理(處理后為純黑白的圖片),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • 使用OpenCV實(shí)現(xiàn)讀取和顯示圖像與視頻

    使用OpenCV實(shí)現(xiàn)讀取和顯示圖像與視頻

    OpenCV 是一個(gè)強(qiáng)大的計(jì)算機(jī)視覺(jué)庫(kù),廣泛應(yīng)用于圖像處理和視頻處理等領(lǐng)域,本文將詳細(xì)介紹如何使用 OpenCV 在 Python 中讀取和顯示圖像以及視頻,希望對(duì)大家有所幫助
    2024-11-11
  • python3.x實(shí)現(xiàn)base64加密和解密

    python3.x實(shí)現(xiàn)base64加密和解密

    這篇文章主要為大家詳細(xì)介紹了python3.x實(shí)現(xiàn)base64加密和解密,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • Python 類(lèi)方法和實(shí)例方法(@classmethod),靜態(tài)方法(@staticmethod)原理與用法分析

    Python 類(lèi)方法和實(shí)例方法(@classmethod),靜態(tài)方法(@staticmethod)原理與用法分析

    這篇文章主要介紹了Python 類(lèi)方法和實(shí)例方法(@classmethod),靜態(tài)方法(@staticmethod),結(jié)合實(shí)例形式分析了Python 類(lèi)方法和實(shí)例方法及靜態(tài)方法相關(guān)原理、用法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2019-09-09
  • 系統(tǒng)梳理Python中配置管理的核心方法與最佳實(shí)踐指南

    系統(tǒng)梳理Python中配置管理的核心方法與最佳實(shí)踐指南

    這篇文章主要為大家詳細(xì)介紹了Python中配置管理的核心方法與最佳實(shí)踐,涵蓋環(huán)境變量,配置文件,密鑰服務(wù)和動(dòng)態(tài)配置中心四大方案,希望對(duì)大家有所幫助
    2026-03-03
  • python安裝dlib失敗的解決方法

    python安裝dlib失敗的解決方法

    本文主要介紹了python安裝dlib失敗的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-05-05
  • python中實(shí)現(xiàn)延時(shí)回調(diào)普通函數(shù)示例代碼

    python中實(shí)現(xiàn)延時(shí)回調(diào)普通函數(shù)示例代碼

    這篇文章主要給大家介紹了關(guān)于python中實(shí)現(xiàn)延時(shí)回調(diào)普通函數(shù)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-09-09
  • Python3基礎(chǔ)之基本數(shù)據(jù)類(lèi)型概述

    Python3基礎(chǔ)之基本數(shù)據(jù)類(lèi)型概述

    這篇文章主要介紹了Python3的基本數(shù)據(jù)類(lèi)型,需要的朋友可以參考下
    2014-08-08
  • 玩轉(zhuǎn)Python發(fā)短信的實(shí)現(xiàn)

    玩轉(zhuǎn)Python發(fā)短信的實(shí)現(xiàn)

    用Python實(shí)現(xiàn)發(fā)短信功能,當(dāng)監(jiān)控到問(wèn)題出現(xiàn)時(shí),短信報(bào)警,使問(wèn)題能得到及時(shí)的處理。當(dāng)然,我相信,用Python發(fā)短信應(yīng)用場(chǎng)景不止此一處,下面我們開(kāi)始Python發(fā)短信的實(shí)現(xiàn),感興趣的朋友參考下吧
    2022-01-01
  • C站最全Python標(biāo)準(zhǔn)庫(kù)總結(jié),你想要的都在這里

    C站最全Python標(biāo)準(zhǔn)庫(kù)總結(jié),你想要的都在這里

    這篇文章主要介紹了C站最全的Python標(biāo)準(zhǔn)庫(kù),總共包含10個(gè)類(lèi)型,希望能對(duì)大家有幫助,看完不虧系列
    2021-07-07

最新評(píng)論

旬阳县| 临高县| 曲周县| 富源县| 杭锦后旗| 五原县| 泽州县| 综艺| 衡阳市| 平果县| 长寿区| 哈巴河县| 郁南县| 南平市| 唐海县| 永登县| 广水市| 博客| 确山县| 南皮县| 上思县| 淮安市| 阳新县| 兰坪| 云和县| 乳山市| 开原市| 英德市| 香格里拉县| 托里县| 安仁县| 雷波县| 眉山市| 嘉定区| 盐山县| 平罗县| 东莞市| 东港市| 临洮县| 南阳市| 根河市|