python 查找文件名包含指定字符串的方法
编写一个程序,能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出绝对路径。
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()
运行结果:
注意:在运行的时候如果选择y,也就是把.py文件所在的目录作为工作目录,此时最好不要把.py文件放到桌面上,因为会遍历桌面上的所有目录及目录下的所有文件,会很大。
相关推荐
YENCSDN 2020-11-17
lsjweiyi 2020-11-17
houmenghu 2020-11-17
Erick 2020-11-17
HeyShHeyou 2020-11-17
以梦为马不负韶华 2020-10-20
lhtzbj 2020-11-17
夜斗不是神 2020-11-17
pythonjw 2020-11-17
dingwun 2020-11-16
lhxxhl 2020-11-16
坚持是一种品质 2020-11-16
染血白衣 2020-11-16
huavhuahua 2020-11-20
meylovezn 2020-11-20
逍遥友 2020-11-20
weiiron 2020-11-16