python對目錄下的大量檔案處理

2021-08-03 08:22:12 字數 1392 閱讀 1249

在用python對某一目錄下的多個檔案進行一一處理,會產生相應的多個結果。比如,在目錄'/home/jkx/anaconda_workspace/task_2017_6_6/ 下有100個.txt 檔案,現在,用python對這100個檔案進行處理,會得到100個結果檔案,我們需要將得到的100個檔案自動存入乙個新建的目錄下,相關**如下:

import os  

import shutil

#get names of files in the directory

def get_filename(filepath,filetype):

import os

filename =

for root,dirs,files in os.walk(filepath):

for i in files:

if filetype in i:

return filename

def main():

srcfilepath = r'/home/jkx/anaconda_workspace/task_2017_6_6/'

filetype = '.txt'

filename = get_filename(srcfilepath,filetype)

#檔名形如:「bacteria_5000bp_subsequence_1.txt」,對取得的檔名按照最後的編號排序

filename.sort(key = lambda x:int(x.split('_')[-1].split('.')[0]))

# 新建的目錄路徑

desfilepath = r'/home/jkx/anaconda_workspace/task_2017_6_6/bacteria_5000bp_subsequence_mark'

os.mkdir(desfilepath) #新建目錄

for i in range(len(filename)):

outfilenamei = 'bacteria_5000bp_subsequence_mark_' + str(i+1) + '.txt'

outfilei = open(outfilenamei,'w')

infilenamei = srcfilepath + filename[i]

infilei = open(infilenamei,'r')

'''相關處理

.........

.........

.........

'''infilei.close()

outfilei.close()

#將處理後的檔案移動到新建的目錄下

shutil.move(outfilenamei,desfilepath)

main()

python對目錄下的檔案進行 多條件排序

在進入正題之前,先介紹一下基礎知識 1 sort 方法 就是對列表內容進行正向排序,直接在原列表進行修改,返回的是修改後的列表 lists 1,5,10,8,6 lists.sort print lists 1,5,6,8,10 2 sorted 方法 對列表進行排序後,返回乙個新的列表,而原列表不...

刪除目錄下大量小檔案和清空大檔案

其中 delete before 接收者在傳輸之前進行刪除操作 可以用來清空目錄或檔案,如下 1 先建立乙個空目錄 mkdir data blank 2 用rsync刪除目標目錄 rsync delete before d data blank var spool clientmqueue 這樣目標...

Python 遍歷目錄下的所有檔案

allfilenum 0 def printpath level,path global allfilenum 列印乙個目錄下的所有資料夾和檔案 所有資料夾,第乙個欄位是次目錄的級別 dirlist 所有檔案 filelist 返回乙個列表,其中包含在目錄條目的名稱 google翻譯 files o...