日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python脚本程序实现搜索文本文件内容

發(fā)布時間:2025/4/5 python 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python脚本程序实现搜索文本文件内容 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

本文介紹用Python實現(xiàn)的搜索本地文本文件內(nèi)容的小程序。從而學習Python I/O方面的知識。代碼如下:

import os#根據(jù)文件擴展名判斷文件類型 def endWith(s,*endstring):array = map(s.endswith,endstring)if True in array:return Trueelse:return False#將全部已搜索到的關(guān)鍵字列表中的內(nèi)容保存到result.log文件中 def writeResultLog(allExistsKeywords):#行分隔符ls = os.linesep#結(jié)果日志文件名logfilename = "result.log" #相對路徑,文件在.py文件所在的目錄中try:fobj = open(logfilename,'w')except IOError,e:print "*** file open error:",eelse:fobj.writelines(['%s%s' % (keyword,ls) for keyword in allExistsKeywords])fobj.close() #搜索指定關(guān)鍵字是否在指定的文件中存在 def searchFilesContent(dirname):#從searchkeywords.txt文件中初始化待搜索關(guān)鍵字列表filename = "searchkeywords.txt" #相對路徑,文件在.py文件所在的目錄中#待搜索關(guān)鍵字列表allSearchKeywords=[]#遍歷文件當前行已搜索到的關(guān)鍵字列表existsKeywordsThisLine=[]#全部已搜索到的關(guān)鍵字列表allExistsKeywords=[]try:fobj = open(filename,'r');except IOError,e:print "*** file open error:",eelse:for eachLine in fobj:allSearchKeywords.append(eachLine.strip('\n')); #使用strip函數(shù)去除每行的換行符fobj.close();#從excludekeywords.txt文件中初始化要排除的搜索關(guān)鍵字列表filename = "excludekeywords.txt" #相對路徑,文件在.py文件所在的目錄中#要排除的搜索關(guān)鍵字列表allExcludedKeywords=[]try:fobj = open(filename,'r');except IOError,e:print "*** file open error:",eelse:for eachLine in fobj:allExcludedKeywords.append(eachLine.strip('\n')); #使用strip函數(shù)去除每行的換行符fobj.close();#從全部已搜索到的關(guān)鍵字列表排除掉不用搜索的關(guān)鍵字for excluedkw in allExcludedKeywords:if(excluedkw in allSearchKeywords):allSearchKeywords.remove(excluedkw);#遍歷打開所有要在其中搜索內(nèi)容的文件,若待搜索關(guān)鍵字列表為空,則不再繼續(xù)遍歷for root,dirs,files in os.walk(dirname):for file in files:if endWith(file,'.java','.xml','.properties'): #只在擴展名為.java/.xml/.properties文件中搜索#打開文件filename = root + os.sep + file #絕對路徑filename = filename.replace("\\","\\\\") #將路徑中的單反斜杠替換為雙反斜杠,因為單反斜杠可能會導致將路徑中的內(nèi)容進行轉(zhuǎn)義了,replace函數(shù)中"\\"表示單反斜杠,"\\\\"表示雙反斜杠try:fobj = open(filename,'r');except IOError,e:print "*** file open error:",eelse:#遍歷文件的每一行for fileLine in fobj:#判斷當前行是否包含所有搜索關(guān)鍵字for keyword in allSearchKeywords:#若包含,并添加到該行已搜索到的關(guān)鍵字列表中if keyword.upper() in fileLine.upper(): #將搜索關(guān)鍵字和該行文本內(nèi)容都轉(zhuǎn)換為大寫后再進行匹配existsKeywordsThisLine.append(keyword)#將這些搜索到的關(guān)鍵字添加到全部已搜索到的關(guān)鍵字列表中,并包含文件名信息for keyword in existsKeywordsThisLine:allExistsKeywords.append(keyword+"\t"+filename.replace("\\\\","\\"))#將這些搜索到的關(guān)鍵字從待搜索關(guān)鍵字列表中移除(后續(xù)將不再搜索該關(guān)鍵字)for keyword in existsKeywordsThisLine:allSearchKeywords.remove(keyword)#清空該行已搜索到的關(guān)鍵字列表內(nèi)容existsKeywordsThisLine = []#若所有的關(guān)鍵字都搜索到了,則記錄日志文件,并結(jié)束搜索工作if len(allSearchKeywords)==0:fobj.close();writeResultLog(allExistsKeywords)print "DONE!",returnfobj.close();#全部文件遍歷結(jié)束writeResultLog(allExistsKeywords)print "DONE!",#僅當本python模塊直接執(zhí)行時,才執(zhí)行如下語句,若被別的python模塊引入,則不執(zhí)行 if __name__ == '__main__':searchFilesContent(r"G:\ccsSmartPipe\SmartPipe\src\java")

1.筆者使用該程序?qū)ava項目中的源文件內(nèi)容進行關(guān)鍵字的搜索。程序入?yún)樵擁椖勘镜匚募到y(tǒng)路徑G:\ccsSmartPipe\SmartPipe\src\java。

2.在配置文件中searchkeywords.txt中輸入要搜索的任意多個關(guān)鍵字?

3.在配置文件中excludekeywords.txt中輸入在searchkeywords.?

4.程序執(zhí)行完成后,即可在result.log日志文件中,查看搜索結(jié)果。即每個關(guān)鍵在哪些文件中存在。并給出每個文件的具體路徑。?

附件:源代碼及配置文件

總結(jié)

以上是生活随笔為你收集整理的Python脚本程序实现搜索文本文件内容的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美精品一区二区性色a+v | 夜夜添无码一区二区三区 | 1级黄色大片 | 老司机深夜福利在线观看 | 久久人妻少妇嫩草av无码专区 | 成人国产精品视频 | 免费在线激情视频 | 人妖ts福利视频一二三区 | 日本理论片中文字幕 | 欧美性受xxxxx | 亚洲青草视频 | 一本色道久久亚洲综合精品蜜桃 | 欧美韩日精品 | 久久久亚洲精品视频 | avtt亚洲天堂 | 国产精品久久久久毛片大屁完整版 | 日韩成人看片 | 4444亚洲人成无码网在线观看 | 欧美精品一区二区在线播放 | 黄色一级片毛片 | 中文字幕第31页 | 亚洲性综合 | 日韩毛片中文字幕 | 在线精品免费视频 | 手机在线免费视频 | 黄色免费网站 | 以女性视角写的高h爽文 | 嫩草研究院在线 | 成人精品一区二区 | 精品久久久久成人码免费动漫 | 国产激情一区二区三区视频免樱桃 | 欧美一级片 | 日韩欧美亚洲一区 | 国产美女被遭强高潮免费网站 | 国偷自拍| 自拍偷拍视频网 | 午夜视频在线免费播放 | 国产91久| 国产91一区二区三区 | 亚洲久爱 | 伊人成年网 | 男女啪啪软件 | 欧美精品系列 | 自宅警备员在线观看 | 91女神在线| 樱桃视频一区二区三区 | 免费看国产黄色片 | 日剧网 | 中文字幕第4页 | 黄色片免费播放 | 久久影院视频 | 91视频久久久久 | 日韩不卡在线观看 | 综合五月婷 | 国产av无码专区亚洲av | 中文一区二区在线播放 | 一级黄色影院 | 一级全黄裸体免费观看视频 | 黑人巨大精品一区二区在线 | 午夜影院在线观看 | 首尔之春在线观看 | 在线免费黄| 久久综合亚洲 | 少妇av一区二区三区无码 | 久久成年人 | 国产天天射 | 亚洲成色www久久网站 | 国产在线观看黄色 | 久久精品免费观看 | 久草视频在线免费看 | 肉丝超薄少妇一区二区三区 | 国产精品久久777777毛茸茸 | 韩国禁欲系高级感电影 | 无遮挡裸光屁屁打屁股男男 | 青青青在线观看视频 | 日本一区高清 | 偷偷草| 男女啪啪免费 | 在线观看va | 综合亚洲色图 | 麻豆av免费观看 | 亚洲 小说区 图片区 | 日韩不卡视频在线观看 | 屁屁影院一区二区三区 | 欧美性猛交xxxx乱大交俱乐部 | 午夜精品久久久久久 | 天天干天天舔天天操 | 国产原创在线播放 | 91黄色小视频| 国产不卡视频在线播放 | 性视频免费看 | 能免费看黄色的网站 | 摸丰满大乳奶水www免费 | 日日操夜夜干 | 国产一区二区三区在线视频观看 | 一本久久道 | 92精品 | 蜜桃在线一区 | 青青草av在线播放 |