python批量更改目錄名/文件名的方法

跑模型和測試一些批量操作時,常常需要一個或多個文件中的文件的命名格式具有一定的規律。有時候獲取的數據又是從一些網站爬取下來的,數據名具有一定的不規律性,這是就需要我們去重命名這些文件。10,20個還好說,如果是上百個,上千個,甚至上萬個呢?我們還能去手動命名嗎?顯然不可能的!這時就需要批量更改文件名的操作。


一、python實現批量更改目錄名

這裡以重命名圖片為例

# -*- coding: UTF-8 -*-
"""
@Author  :遠方的星
@Time   : 2021/4/16 9:16
@CSDN    :https://blog.csdn.net/qq_44921056
@騰訊雲   : https://cloud.tencent.com/developer/column/91164
"""
import os

path = input('請輸入你想更改的文件的路徑(如D:/圖片/風景):')
file_list = os.listdir(path)
file_list.sort()  # 對列表內容進行排序,默認為升序

i = 0  # 用於記錄重命名,方便重命名
for item in file_list:
    if item.endswith('.jpg'):  # 這裡以.jpg進行判斷文件名
        src = os.path.join(path, item)
        dst = os.path.join(os.path.abspath(path), str(i) + '.jpg')

        try:
            os.rename(src, dst)
            print('已將{}更改為{}'.format(src, dst))
            i += 1
        except Exception as e:
            print(e)
            print('{}更改失敗'.format(src))
print('所有目標文件已完成全部更改')

在這裡插入圖片描述


在這裡插入圖片描述

二、一些函數解釋

os.listdir

os.listdir(path),path為需要列出的目錄路徑,函數返回值為指定路徑下的文件和文件夾列表

import os
print(os.listdir('D:/圖片'))

輸出:

[‘Screenshots’, ‘動漫圖片’, ‘原神’, ‘圖片格式.txt’, ‘頭像’, ‘橫屏壁紙’, ‘海賊王’, ‘證件照’, ‘賽爾號’, ‘風景’, ‘鬼滅 之刃’]

在這裡插入圖片描述

endswith

用於判斷字符串是否以指定的內容結尾

具體可以參考python中endswith()函數的用法

os.path.join

用於路徑的拼接

os.path.abspath

返回絕對路徑

os.rename

用於重命名

基本格式為:os.rename(src , dst)

src 參數用於指定要進行重命名的目錄或文件;
dst 參數用於指定重命名後的目錄或文件。

三、Blogger’s speech

如有不足,還請大佬評論區留言或私信我,我會進行補充。

作者:遠方的星
CSDN:https://blog.csdn.net/qq_44921056
騰訊雲:https://cloud.tencent.com/developer/column/91164
本文僅用於交流學習,未經作者允許,禁止轉載,更勿做其他用途,違者必究。

到此這篇關於python批量更改目錄名/文件名的方法的文章就介紹到這瞭,更多相關python批量更改目錄名/文件名內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀:

    None Found