|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- import os
- def search_file(key,detail):
- all_files=os.walk(os.getcwd())
- txt_file=list()
- for each_file1 in all_files:
- for each_file2 in each_file1[2]:
- # 先把所有的txt文件先收集
- if os.path.splitext(each_file2)[1]=='.txt':
- each_file2=os.path.join(each_file1[0],each_file2)
- #得到txt文件的路径\n通过路径名+文件名得到
- txt_file.append(each_file2)
- #将文件路径放至list列表之中
- for each_txt_file in txt_file:
- f=open(each_txt_file)
- count=0
- key_dict=dict() #用于存放返回值,通常用字典或者列表格式
- pos=list()
-
- for each_line in f:
- count+=1
- if(key in each_line):
- pos=list() #用于存放具体第几个字符
- begain=line.find(key)
- while begain!=-1: #还没有到达末尾时
-
- pos.append(begain+1)
- begain=line.find(key,begain+1) #进行迭代
- key_dict[count]=pos
- f.close()
- if key_dict:
- print('=================================')
- print('在文件%s之中找到关键字%s' % (each_txt_file,key))
- if detail in ['yes','YES','Yes']:
- keys=key_dict.keys()
- keys=sorted(keys)
- for each_key in keys:
- print('关键字出现在第%s行第%s个字符' % (each_key,str(key_dict[each_key]))) #依次输出所在行数
- key=input('请输入关键字')
- detail=input('是否显示关键字所在的行与第几个字符,输入yes/no')
- search_file(key,detail)
复制代码
求救,出现了什么问题?代码没有任何显示 |
|