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

无法配置带引号文本输出,寻求Python文件对比格式优化方案

解决方案

以下是修改后的代码,可实现你需要的带引号、末尾逗号格式的差异输出:

def compare(File1, File2):
    # 读取两个文件的内容并转为集合
    with open(File1, 'r') as f:
        d = set(f.readlines())
    with open(File2, 'r') as f:
        e = set(f.readlines())
    
    # 提取差异行并去除每行末尾的换行符
    diff_lines = [line.rstrip('\n') for line in d - e]
    # 将每行格式化为带双引号的字符串
    formatted_lines = [f'"{line}"' for line in diff_lines]
    # 用",\n"拼接所有行,自动处理最后一行无逗号的要求
    result_content = ',\n'.join(formatted_lines)
    
    # 将结果写入目标文件
    with open('file3.txt', 'w') as f:
        f.write(result_content)

File1 = 'Updatedfile1.txt'
File2 = 'Rawfile2.txt'
compare(File1, File2)

关键修改说明:

  • 清理换行符:用rstrip('\n')移除每行末尾的换行符,避免输出时出现多余空行,同时保留行内的其他空白字符。
  • 格式化行内容:通过f-string将每行内容包裹在双引号中,生成符合要求的"xxx.com"格式。
  • 高效拼接结果:使用',\n'.join()方法拼接所有格式化后的行,该方法会自动在每行(除最后一行)末尾添加逗号和换行,完全匹配你的输出需求。
  • 简化文件操作:直接以写入模式打开目标文件,自动完成文件创建或清空操作,无需额外的手动创建步骤。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 22:30:48