python檢索特定內(nèi)容的文本文件實例
更新時間:2018年06月05日 10:53:49 作者:wedvefv
今天小編就為大家分享一篇python檢索特定內(nèi)容的文本文件實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
windows環(huán)境下python2.7
腳本指定一個參數(shù)作為要檢索的字符串
例如: >find.py ./ hello
# coding=utf-8
import os
import sys
# 找到當(dāng)前目錄下的所有文本文件
def findFile(path):
f = []
d = []
l = os.listdir(path)
for x in l:
if os.path.isfile(os.path.join(os.getcwd() + "\\", x)):
f.append(x)
else:
d.append(x)
return f, d # 返回文件和目錄的列表
# print x, "\n", y
# 統(tǒng)計一個文本內(nèi)字符串的個數(shù)
def findstrCount(file, strToFind):
count = 0
thefile = open(file, 'rb')
while True:
buffer = thefile.read()
if not buffer:
break
count += buffer.count(strToFind)
thefile.close()
return count
# 遍歷文件列表中,包含特定字符串的文件
def findstr(file, str):
# f = open(file, "r+")
# if f.read().find(str) != -1:
# s = os.getcwd() + "\\" + file
# else:
# s = "None"
# f.close()
i = 1
global s
for line in open(file):
# return is index of the str start position.
if line.find(str) != -1:
s = os.getcwd() + "\\" + file + "------>line:%d" % (i)
print s
i = i + 1
return s
L = [] # 全局變量,存放找到的目標(biāo)文件
def find(p, str):
try:
f, d = findFile(p)
for x in f:
Ret = findstr(x, str)
if Ret:
L.append(Ret)
if d:
for x in d:
os.chdir(x)
find("./", str)
os.chdir('../')
except Exception, e:
print e
finally:
pass
if __name__ == '__main__':
s = 0
find(sys.argv[1], sys.argv[2])
以上這篇python檢索特定內(nèi)容的文本文件實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
pymysql.err.DataError:1366的報錯解決
通過python把數(shù)據(jù)同步至mysql數(shù)據(jù)庫的過程中,遇到錯誤,本文主要介紹了pymysql.err.DataError:1366的報錯解決,具有一定的參考價值,感興趣的可以了解一下2024-05-05
Python實現(xiàn)簡單的多任務(wù)mysql轉(zhuǎn)xml的方法
這篇文章主要介紹了Python實現(xiàn)簡單的多任務(wù)mysql轉(zhuǎn)xml的方法,結(jié)合實例形式分析了Python查詢mysql結(jié)果集轉(zhuǎn)xml格式數(shù)據(jù)輸出的相關(guān)操作技巧,需要的朋友可以參考下2017-02-02
python函數(shù)參數(shù)*args**kwargs用法實例
python當(dāng)函數(shù)的參數(shù)不確定時,可以使用*args和**kwargs。*args沒有key值,**kwargs有key值,下面看例子2013-12-12

