重要說明:
(1)python使用4個(gè)空格進(jìn)行層次縮進(jìn)的(不是tab),在eclipse里面可以直接使用tab縮進(jìn),是因?yàn)?a >eclipse會(huì)實(shí)時(shí)地將tab轉(zhuǎn)成4個(gè)空格
(2)在eclipse中安裝pyDev插件,就可以調(diào)試python腳本了
(3)如果在python文件中存在中文字符,需要在python文件的開頭處指明文件的編碼類型,形式如:#coding=gbk
(4)以下代碼使用的是python2.7.3版本
+++++++++ main.py +++++++++
#coding=gbk# filename : main.py# author : kekec# date : 20140813import os,sysimport filedirimport filterfile_suffix = '*.txt'root_path = 'F://新建文件夾//20140714'result_path = unicode('result.txt' , "utf8")wfile = open(result_path, 'w')for i in filedir.search_file(file_suffix, root_path): PRint i bfile = False; rfile = open(i, 'r') while 1: line = rfile.readline() if not line: break if (False == filter.is_filter(line)): if (False == bfile): wfile.write(i) wfile.write('/n') bfile = True print line wfile.write(line) wfile.flush() rfile.close()wfile.close()
+++++++++ filedir.py +++++++++
#coding=gbk# filename : filedir.py# author : kekec# date : 20140813import os,sys,fnmatchdef search_file(pattern="*.txt", root=os.curdir): for path, dirs, files in os.walk(os.path.abspath(root)): for filename in fnmatch.filter(files, pattern): yield os.path.join(path, filename)
+++++++++ filter.py +++++++++
#coding=gbk# filename : filter.py# author : kekec# date : 20140813ALOG_0 = '[ERROR]'BLOG_0 = 'OnGameUpdateDB'CLOG_0 = 'Field25'DLOG_0 = 'execute'ELOG_0 = 'failed'def is_filter(line): a = line.find(ALOG_0) >= 0 b = line.find(BLOG_0) >= 0 c = line.find(CLOG_0) >= 0 d = line.find(DLOG_0) >= 0 e = line.find(ELOG_0) >= 0 return (a and b and c and d and e)
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注