python文档处理之多文档搜索

我们逐行解释这段代码:

  1. search_text = input("你要搜索的字段:"):这行代码提示用户输入要搜索的字段,并将用户输入的内容保存在变量search_text中。

  2. files = ["1.txt", "2.txt", ... , "12.txt"]:这行代码定义了一个列表files,包含了要搜索的文件名。

  3. for file_name in files::这行代码开始一个循环,遍历files列表中的每一个文件名。

  4. with open(file_name, "r", encoding="utf-8") as file::这个with语句用于打开当前循环中的文件名指定的文件,以只读模式(“r”)和UTF-8编码格式。这样做的好处是在代码块执行完毕后,文件会被自动关闭。

  5. for line_number, line in enumerate(file, start=1)::这行代码开始另一个循环,逐行读取文件内容。enumerate函数用于同时获取行号和行内容,start=1参数指定行号从1开始计数。

  6. if search_text in line::这个条件判断语句检查当前行line是否包含search_text

  7. print(f"Line {line_number} in file '{file_name}': {line.strip()}"):如果search_text在当前行中,这行代码将打印出文件的名称、行号以及该行的内容。line.strip()用于移除行首尾的空白字符。

  8. print("Search complete."):在所有文件遍历完成后,打印出“Search complete.”,表示搜索完成

    # 定义要搜索的字段
    search_text = input("你要搜索的字段:")
    
    # 文件列表
    files = ["1.txt", "2.txt", "3.txt", "4.txt", "5.txt", "6.txt", "7.txt", "8.txt", "9.txt", "10.txt", "11.txt", "12.txt"]
    
    # 遍历文件列表
    for file_name in files:
        # 打开文件
        with open(file_name, "r", encoding="utf-8") as file:
            # 逐行读取文件
            for line_number, line in enumerate(file, start=1):
                # 检查当前行是否包含要搜索的字段
                if search_text in line:
                    # 打印文件名和行号
                    print(f"Line {line_number} in file '{file_name}': {line.strip()}")
    
    print("Search complete.")

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值