You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python在文件中查找含指定关键词的目标内容并输出

问题解决:提取文件中含指定关键词的条目

原代码的问题

  1. 写入模式错误:append函数使用"w"模式打开文件,每次调用都会清空文件内容重新写入,导致最终文件里只有最后一次写入的jackie.321,而非两个条目都保存。
  2. 未实现条目提取:仅检测关键词是否存在,没有对文件内容进行分割和筛选,无法输出匹配的具体条目。

修改后的代码

第一步:修复文件写入逻辑

先确保两个条目都能正确保存到文件中:

def append(name, password):
    # 使用"a"追加模式,每次写入不会清空原有内容
    with open("myfile.txt", "a") as f:
        f.write(f"{name}{password} ")  # 用空格分隔每个条目

# 写入两个条目
append("jack", ".123")
append("jackie", ".321")

第二步:提取匹配关键词的条目

读取文件内容,分割后筛选出包含关键词的条目:

with open("myfile.txt", "r") as f:
    content = f.read().strip()  # 去除首尾空白字符
    items = content.split()  # 按空格分割成单个条目列表

# 筛选包含"jack"的条目
matched_items = [item for item in items if "jack" in item]

# 输出结果
if matched_items:
    for item in matched_items:
        print(item)
else:
    print("未找到匹配的内容")

进阶:精确匹配前缀

如果需要只匹配以"jack"开头的条目(排除jackie.321),只需把筛选条件改成:

matched_items = [item for item in items if item.startswith("jack")]

说明

  • 使用with语句操作文件,会自动处理文件关闭,避免资源泄漏。
  • 分割条目时用split(),默认按任意空白字符分割,适配不同的分隔场景。

内容的提问来源于stack exchange,提问作者Hasan Cb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 22:45:35