python对目录下的大量文件处理

在用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:
                filename.append(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() 


  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值