如下圖所示,在本地文件夾中有這樣一堆視頻文件,在這種情況下并不是亂序的。
但是將其上傳到網(wǎng)盤中后,就會(huì)經(jīng)常變成亂序。即它們會(huì)按照1、10、11、2、20這樣排序,并不方便我們按順序去依次觀看。
所以我們希望能夠給它們?cè)诒镜刂匦旅幪?hào),比如可以按照001、002、003···、020這樣排序,就可以避免上面這種尷尬的情況了。
在Python中,os模塊可以用來自動(dòng)處理各種文件和目錄,比如復(fù)制、移動(dòng)、重命名和刪除等操作。
獲取文件列表
在交互式環(huán)境中輸入如下命令:
import os
path = os.getcwd()
filenames = os.listdir(path)
filenames
輸出:
os模塊中的getcwd()
函數(shù),使用它可以獲取當(dāng)前工作目錄。os模塊中的listdir()
函數(shù),可以返回工作目錄中的所有文件和子目錄。通過這兩個(gè)函數(shù),我們就獲取了當(dāng)前工作目錄下的所有文件。
篩選視頻文件
在交互式環(huán)境中輸入如下命令:
file_mp4s = [i for i in filenames if i.split(".")[-1] == "mp4"]
file_mp4s
輸出:
這一步驟,是用來篩選文件列表中的所有mp4文件。用循環(huán)+條件太繁瑣,而列表生成式則可以用一行語句得到視頻文件。
批量重命名
在交互式環(huán)境中輸入如下命令:
for i in file_mp4s:
new_name = i.split("-")[0].zfill(3) + "-" + i.split("-")[1]
os.rename(i,new_name)
輸出:
os模塊中的rename()
函數(shù),使用它可以重命名文件。
這里還用到一個(gè)字符串函數(shù)zfill()
,它會(huì)返回指定長(zhǎng)度的字符串,原字符串右對(duì)齊,前面填充0。所以"1".zfill(3)
的話,會(huì)返回'001'
。
這樣,我們就實(shí)現(xiàn)了亂序文件的重新命名編號(hào),希望今天的分享能對(duì)你有幫助~
-
模塊
+關(guān)注
關(guān)注
7文章
2787瀏覽量
50311 -
文件
+關(guān)注
關(guān)注
1文章
579瀏覽量
25354 -
字符串
+關(guān)注
關(guān)注
1文章
590瀏覽量
22209 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4379瀏覽量
64791
發(fā)布評(píng)論請(qǐng)先 登錄
Synopsys無法對(duì)Xilinxlibrary xilinxcorelib進(jìn)行重新命名
【Altium小課專題 第052篇】創(chuàng)建好的原理圖如何進(jìn)行重新命名?
labview寫入access數(shù)據(jù)庫亂序問題
rtthread studio.h對(duì)原來的工程名字重新命名后出現(xiàn)很多路徑錯(cuò)誤怎么修改?
設(shè)計(jì)的保存與時(shí)序文件的導(dǎo)出
傳LG計(jì)劃重新命名旗艦G系列,LG G7設(shè)備名稱已現(xiàn)身英國(guó)官網(wǎng)

評(píng)論