python 文本文件中查找指定的字符串

python 文本文件中查找指定的字符串,第1张

编写一个程序,能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出绝对路径。

import os

class SearchFile(object):

def __init__(self,path='.'):

self._path=path

self.abspath=os.path.abspath(self._path) # 默认当前目录

def findfile(self,keyword,root):

filelist=[]

for root,dirs,files in os.walk(root):

for name in files:

fitfile=filelist.append(os.path.join(root, name))

#print(fitfile)

print(os.path.join(root, name))

#print(filelist)

print('...........................................')

for i in filelist:

if os.path.isfile(i):

#print(i)

if keyword in os.path.split(i)[1]:

print('yes!',i)# 绝对路径

#else:

#print('......no keyword!')

def __call__(self):

while True:

workpath=input('Do you want to work under the current folder? Y/N:')

if(workpath == ''):

break

if workpath=='y' or workpath=='Y':

root=self.abspath # 把当前工作目录作为工作目录

print('当前工作目录:',root)

dirlist=os.listdir() # 列出工作目录下的文件和目录

print(dirlist)

else:

root=input('please enter the working directory:')

print('当前工作目录:',root)

keyword=input('the keyword you want to find:')

if(keyword==''):

break

self.findfile(keyword,root) # 查找带指定字符的文件

if __name__ == '__main__':

search = SearchFile()

search()

来自python3学习笔记,有不正确的地方大家多多指教

下面查看各个方法的区别

1.find() 和 rfind()

2.find() 和 index()

3.index() 和 rindex()

文件包含的内容(include.yaml文件)

1.使用正则表达式查找

输出:

2.使用循环查找

输出:


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/8105181.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-13
下一篇2023-04-13

发表评论

登录后才能评论

评论列表(0条)

    保存