Python批量修改檔名的方式詳解

2022-09-24 14:36:23 字數 1866 閱讀 7137

目錄

這種方法,保留了檔案原本的字尾。這裡主要演示的是對名的修改。

# 批量修改檔名

# 批量修改檔名

import os

import re

import sys

path = 'f:\temp\zz'

filelist = os.listdir(path) # 待修改資料夾

print("修改前:"+str(filelist)) # 輸出資料夾中包含的檔案

currentpath = os.getcwd() # 得到程序當前工作目錄

os.chdir(path) www.cppcns.com # 將當前工作目錄修改為待修改資料夾的位置

n = 1 # 名稱變數

for filename in filelist: # 遍www.cppcns.com歷資料夾中所有檔案

pat=".+\.(jpg|png|jwww.cppcns.compeg)" # 匹配檔名正規表示式

pattern = re.findall(pat,filename) # 進行匹配

os.rename(filename,(str(n)+'.'+pattern[0])) #檔案重新命名

n += 1 # 改變編號,繼續下一項

os.chdir(currentpath) # 改回程式執行前的工作目錄

sys.stdin.flush() # 重新整理

print("修改後:"+str(os.listdir(path))) #輸出修改後資料夾中包含的檔案

這種方法,修改了檔案原本的字尾。這裡主要演示的是對的修改。

import os

path = 'f:\temp\zz'

# 獲取該目錄下所有檔案,存入列表中

filelist = os.listdir(path)

n = 0

for i in filelist:

# 設定舊檔名(就是路徑+檔名)

oldname = path + os.sep + filelist[n] # os.sep新增系統分隔符

# 設定新檔名

os.rename(oldname, newname) # 用os模程式設計客棧塊中的rename方法對檔案改名

print(oldname, '*****=>', newname)

n += 1

**有個小的注意事項。比如檔案名字原本就是a1.jpg, a3.jpg, a6.jpg這樣時,執行上述**會報錯。把上面的字母a改成其他的就行了。因為資料夾下原本就有該名稱的檔案,而程式在修改名字的時候,執行過程中就會出現兩個同名檔案共存的情況。

import os

# 輸出所有的資料夾名和檔名

path = 'f:\temp\zz'

datafilelist = os.listdir(path)

for i in datafilelist:

print(i)

# 讀取特定的檔名

txtfile =

for filename in datafilelist:

j = filename.split('.')

if len(j)==2:

if j[1]=='txt':

txtfile.append(filename)

python批量修改檔名

修改前 flv檔案是從rar檔案中解壓出來的。由於英文不好,並且有的flv檔案的名字並不十分清晰明了,所以打算將flv檔案名字改為相應的rar檔案的名字。僅供參考,新手勿噴 主要使用了python中的re 正規表示式 和os模組中的函式。coding gb2312 import os import ...

python批量修改檔名

最近工作需要給大量檔案改名。恰巧,本人又在自學python,所以就想用python寫個程式來自動修改相應的檔名。下面就通過 來介紹一下我的做法吧。先說一下,我的工作要求是,在所有的資料檔案前加上資料所在資料夾的名字,改完名字後把所有的檔案彙總到乙個新的資料夾。我要處理的檔案有的存放在次最後層目錄 有...

Python 批量修改檔名

需要將收到的 bmp 檔案按名稱順序排列,而檔名本來的樣式類似於image12.bmp,現需要修改為12.bmp,由於檔案數量較大,所以產生了利用 python 修改的想法,雖然 很簡單,但還算成功。import os 檔案位址 path c users 迴圈處理資料夾內的每個檔案 forfile ...