|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
这个是每个文件搜索到第一个就不继续了,如何修改让他把这个文件一直搜索完
import os
def search_keywords_in_html(directory, keyword):
files = os.listdir(directory)
for file in files:
if file.endswith('.html'):
file_path = os.path.join(directory, file)
with open(file_path, 'r', encoding='UTF-8') as f:
content = f.read()
if keyword in content:
keyword_index = content.index(keyword)
start_index = max(0, keyword_index - 10)
end_index = min(len(content), keyword_index + len(keyword) + 10)
context = content[start_index:end_index]
print(f"Found '{keyword}' in {file}. Context: {context}")
# 指定要搜索的目录和关键字
directory = 'f:\\'
keyword = input('请输入要查询的内容:')
search_keywords_in_html(directory, keyword)
你好!根据你的要求,以下是修改后的代码,让它能够一直搜索到文件结束:
- import os
- def search_keywords_in_html(directory, keyword):
- files = os.listdir(directory)
-
- for file in files:
- if file.endswith('.html'):
- file_path = os.path.join(directory, file)
-
- with open(file_path, 'r', encoding='UTF-8') as f:
- content = f.read()
-
- keyword_index = content.find(keyword)
- while keyword_index != -1:
- start_index = max(0, keyword_index - 10)
- end_index = min(len(content), keyword_index + len(keyword) + 10)
- context = content[start_index:end_index]
-
- print(f"Found '{keyword}' in {file}. Context: {context}")
-
- keyword_index = content.find(keyword, keyword_index + 1)
- # 指定要搜索的目录和关键字
- directory = 'f:\\'
- keyword = input('请输入要查询的内容:')
- search_keywords_in_html(directory, keyword)
复制代码
主要的修改包括:
- 使用 content.find(keyword, keyword_index + 1)来继续搜索下一个关键字的索引。 find()函数会返回关键字在字符串中的索引位置,如果找不到则返回-1。
- 使用循环 while keyword_index != -1来持续搜索,直到找不到关键字。
这段代码会在指定目录下的所有 .html文件中搜索指定的关键字,并输出找到的结果及其上下文。
希望能帮到你!如果还有其他问题,请随时提问。
|
|