python按順序重命名文件并分類(lèi)轉(zhuǎn)移到各個(gè)文件夾中的實(shí)現(xiàn)代碼
系統(tǒng)
ubuntu20.04
工具
python
要求
文件夾中有22個(gè)子文件夾,每個(gè)子文件又包含56個(gè)文件,要求將每個(gè)子文件夾中的第一個(gè)文件放到一個(gè)新文件夾中,第二個(gè)放一個(gè)新的中,一直到最后。
解決方案
1.復(fù)制源文件
import os import shutil #源文件路徑 source_path='......' #復(fù)制的新文件的路徑 copy_source_path='.....' #直接復(fù)制過(guò)去的話,經(jīng)常會(huì)提示文件存在,所以加個(gè)判斷語(yǔ)句 #判斷路徑是否存在源文件,如果有則刪除 if os.path.exists(copy_source_path): shutil.rmtree(copy_source_path) #復(fù)制文件過(guò)去 shutil.copytree(source_path,copy_source_path)
保留源文件可以增加自己操作的容錯(cuò)性,并可以檢查自己操作是否滿足要求,當(dāng)然也可以直接復(fù)制粘貼源文件
2.創(chuàng)建新文件夾
def creat(files):
#創(chuàng)建名稱(chēng)為1~56的新文件夾
for i in range(1,57):
#判斷路徑是否存在同名文件夾,如果沒(méi)有則創(chuàng)建
if not os.path.exists(files +'/' +str(i)):
os.makedirs(files +'/' +str(i))
#輸入路徑
creat('......')
3.按順序命名并轉(zhuǎn)移到新文件中
#上面新文件夾所在路徑
target_path='.......'
#總文件夾路徑
for file in os.listdir(copy_source_path):
j=1
#拼接出文件完整路徑
source_path_1=os.path.join(copy_source_path,file)
source_list=os.listdir(source_path_1)
#對(duì)獲取的文件名排序,否則是亂序修改
source_list_1=sorted(source_list)
#子文件夾路徑
for file_1 in source_list_1:
#源文件地址,這里的源文件我用的是復(fù)制的文件
oldname_path=os.path.join(source_path_1,file_1)
#新文件夾路徑
for file_2 in os.listdir(target_path):
if str(j)==file_2:
target_path_1=os.path.join(target_path,file_2)
#新文件路徑以及新名稱(chēng),這里新名稱(chēng)我是用的子文件名+文件序號(hào)+文件原來(lái)名稱(chēng),而上面的判斷語(yǔ)句就是判斷文件序號(hào)與新文件夾名稱(chēng)是否相同
newname_path=os.path.join(target_path_1,file +'-'+str(j)+'-'+file_1)
#renamen指令不僅能重新命名而且不保留源文件以達(dá)到轉(zhuǎn)移的目的
os.rename(oldname_path,newname_path)
#要對(duì)每個(gè)子文件夾中的文件順序命名,注意j所在的循環(huán),不要放錯(cuò)
j+=1
到此這篇關(guān)于python按順序重命名文件并分類(lèi)轉(zhuǎn)移到各個(gè)文件夾中的實(shí)現(xiàn)代碼的文章就介紹到這了,更多相關(guān)python重命名文件并分類(lèi)轉(zhuǎn)移到各個(gè)文件夾中內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Windows安裝Anaconda3的方法及使用過(guò)程詳解
今天帶大家學(xué)習(xí)的是關(guān)于Python的相關(guān)知識(shí),文章圍繞著在windows上Anaconda3的安裝方法及使用展開(kāi),文中有非常詳細(xì)的介紹,需要的朋友可以參考下2021-06-06
深入探索Python解碼神器Chardet自動(dòng)檢測(cè)文本編碼
Chardet,洞察編碼的清晰水晶球,一個(gè)讓你與編碼不再“失聯(lián)”的神器,本文帶大家走近這個(gè)隱藏在Python工具箱中的小寶貝,探索它的秘密2024-01-01
Python 程序報(bào)錯(cuò)崩潰后如何倒回到崩潰的位置(推薦)
這篇文章主要介紹了Python 程序報(bào)錯(cuò)崩潰后如何倒回到崩潰的位置,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06
Python中dataclass庫(kù)實(shí)例詳解
這篇文章主要介紹了Python中dataclass庫(kù),合理使用dataclass將會(huì)大大減輕開(kāi)發(fā)中的負(fù)擔(dān),將我們從大量的重復(fù)勞動(dòng)中解放出來(lái),這既是dataclass的魅力,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2022-09-09
python中的os.mkdir和os.makedirs的使用區(qū)別及如何查看某個(gè)模塊中的某些字母開(kāi)頭的屬性方法
這篇文章主要介紹了python中的os.mkdir和os.makedirs的使用區(qū)別及如何查看某個(gè)模塊中的某些字母開(kāi)頭的屬性方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03
Python操作Access數(shù)據(jù)庫(kù)基本步驟分析
這篇文章主要介紹了Python操作Access數(shù)據(jù)庫(kù)基本步驟,結(jié)合實(shí)例形式詳細(xì)分析了Python針對(duì)access操作的具體步驟與相關(guān)注意事項(xiàng),需要的朋友可以參考下2016-09-09

