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

Python实现:如何向文本文件指定行追加审核状态

问题解决:给对应评论行添加审核状态

原代码的问题很明确:你用了"a"(追加)模式写入文件,不管什么时候写,内容都会直接加到文件最后,而且没对应到具体行做修改。

简单解决方案是:先把所有行读进内存,审核时直接修改内存里的对应行数据,等全部审核完,再把整个内容写回文件。

修改后的代码如下:

def review_comments():
    # 读取所有行并保存到列表
    with open("data.txt", "r") as textfile:
        lines = textfile.read().splitlines()
    
    line_idx = 0
    total_lines = len(lines)
    
    while line_idx < total_lines:
        # 拆分当前行的用户和评论
        user, comment = lines[line_idx].split(";")
        # 显示待审核内容
        choice = input(f"审核[{user}: {comment}] - 输入g通过/a拒绝: ")
        
        # 更新当前行,添加审核状态
        if choice == "g":
            lines[line_idx] = f"{user};{comment};approved"
        elif choice == "a":
            lines[line_idx] = f"{user};{comment};disapproved"
        else:
            print("输入无效,请输入g或a")
            continue  # 不切换到下一行,重新审核当前内容
        
        line_idx += 1
    
    # 把修改后的所有行写回文件
    with open("data.txt", "w") as textfile:
        textfile.write("\n".join(lines))
    
    return "审核完成"

print(review_comments())

关键修改点:

  • 一次性读取所有行到lines列表,后续直接修改列表里的元素,对应原文件的每一行。
  • 审核时直接更新lines中对应索引的行,把审核状态拼接到行尾。
  • 最后用"w"模式(覆盖写入)把整个修改后的列表写回文件,确保每一条评论的审核状态都紧跟在自己的行后面。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 06:50:26