Python學(xué)習(xí)九十七天:Python實現(xiàn)文件名批量處理

我們知道文件名是可以手動修改的,但是如果要同時修改多個文件名,那一個一個修改會浪費掉很多時間,此時我們就可以考慮使用python來實現(xiàn)文件名的批量處理。想要批量處理文件名首先確定需要處理的文件名,以及確定處理后新的文件名,這樣就可以開始處理了;

1.批量處理文件

  • 首先我們要獲取文件名,可以通過os模塊中的os.abspath()方法os.dirname()方法、os.join()方法等來操作;

  • 然后使用splitext()方法將文件名和擴展名分成兩部分;

  • 接著根據(jù)需求修改文件名或擴展名;

  • 最后使用os.rename()方法來重命名文件;

將data目錄下的以.txt結(jié)尾的文件改為不帶后綴名稱的文件名,例如將file1.txt修改為file1

import os
PROJECT_DIR_PATH = os.path.dirname(os.path.abspath(os.path.abspath(__file__)))
DIR_PATH = os.path.join(PROJECT_DIR_PATH, 'data')
files = os.listdir(DIR_PATH)
def is_suffix_txt(suffix: str):
    if suffix == 'txt':
        return True
    return True
for filename in files:
    name, suffix = os.path.splitext(filename)
    if is_suffix_txt(suffix):
        new_name = os.path.join(DIR_PATH, name)
        old_name = os.path.join(DIR_PATH, filename)
        os.rename(old_name, new_name)

2.文件操作的方法

  • abspath()方法:獲取當(dāng)前文件的全路徑,所帶參數(shù)為file

  • dirname()方法: 獲取當(dāng)前文件的目錄全路徑,所帶參數(shù)為文件全路徑;

  • join()方法:使用拼接方法來拼接路徑,第一個參數(shù)為文件目錄路徑,第二個參數(shù)為需要拼接的路徑;

  • listdir()方法:用于返回指定的文件夾包含的文件或文件夾的名字的列表;

  • splitext()方法:用于分離文件名與擴展名;默認返回(fname,fextension)元組,可做分片操作;

  • os.rename()方法:用于命名文件或目錄,從 src 到 dst,參數(shù)src是要修改的文件名,參數(shù)dst是修改后的文件名,沒有返回值;

將data目錄下的以.txt結(jié)尾的文件改為以.py結(jié)尾的文件,例如將file.txt修改為file.py

import os
PROJECT_DIR_PATH = os.path.dirname(os.path.abspath(os.path.abspath(__file__)))
DIR_PATH = os.path.join(PROJECT_DIR_PATH, 'data')
files = os.listdir(DIR_PATH)
def is_suffix_txt(suffix: str):
    if suffix == '.txt':
        return True
    return False
for filename in files:
    name, suffix = os.path.splitext(filename)
    if is_suffix_txt(suffix):
        new_name = os.path.join(DIR_PATH, name) + '.py'
        old_name = os.path.join(DIR_PATH, filename)
        os.rename(old_name, new_name)

參考:https://www.9xkd.com/user/plan-view.html?id=3898070405

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容