提取海量文字檔案中含有指定字串的行

2021-06-20 12:12:23 字數 1131 閱讀 6575

在工作中遇到乙個提取乙個目錄中所有文字檔案中含有特定字串的行,並將其寫入乙個檔案,於是有了以下**。

# -*- coding: utf8 -*-

import os

import sys

import glob

import time

reload(sys)

sys.setdefaultencoding('utf-8')

abspath = os.path.dirname(__file__)

if abspath=='':

os.chdir(sys.path[0])

else:

os.chdir(abspath)

search_str='你要提取的字串' #定義要在文字檔案提取的字串

if __name__=='__main__':

stime=time.time()

fetch_list=

all_in_file=glob.glob(r'*.txt')

if len(all_in_file)>0:

for infile in all_in_file:

read_file_list=open(infile,'r').readlines()

one_fetch_list=[j for j in read_file_list if j.find(search_str)>0]

if len(one_fetch_list):

file_name=infile[0:-4]

print u'從檔案\t%s\t中提取到\t%d\t條含有\t%s\t的記錄'%(infile,len(one_fetch_list),search_str)

fetch_list.extend(one_fetch_list)

#for t in one_fetch_list:

out_txt=open('fetch_result.txt','w')

out_txt.writelines(fetch_list)

out_txt.close()

print 'coast time:%.2f'%(time.time()-stime,)

文字檔案以指定的字串分割

unit unit1 inte ce uses windows,messages,sysutils,variants,classes,graphics,controls,forms,dialogs,stdctrls type userarray array of string type tform1...

讀取文字檔案中指定的幾列

今天在論壇上看到乙個問題,這個問題大概是這樣的,讀取文字檔案中指定的幾列,並儲存入資料庫中。insus.net花上些少時間,實現讀取文字的功能部分。建立乙個文字檔案,文字新增好幾行。每一行有好幾列,列與列之間使用逗號分隔。adf,adfadf,adsfgads,qwer,wrt,wrey,asdfs...

python文字檔案,生成指定的檔案格式

import os import sys import string 在乙個特定的模式開啟指定的檔案,獲取檔案控制代碼 def getfileins filepath,model print 開啟檔案 print filepath print model return open filepath,m...