Python 如何将两个文本文件与文件路径进行比较,并在另一个文本文件中输出差异?

Python 如何将两个文本文件与文件路径进行比较,并在另一个文本文件中输出差异?,python,Python,我正在编写一个代码,将两个文本文件相互比较,并将它们输出到另一个文本文件中。到目前为止,我一直在第5行中得到一个“不可调用的unicode”错误。我现在的代码缺少什么 enter code here import glob, os, shutil, time, string def compare(File1,File2): with open(File1,'r') as f: d=set(f.readlines()) with open(File2,'r'

我正在编写一个代码,将两个文本文件相互比较,并将它们输出到另一个文本文件中。到目前为止,我一直在第5行中得到一个“不可调用的unicode”错误。我现在的代码缺少什么

enter code here
import glob, os, shutil, time, string

def compare(File1,File2):
    with open(File1,'r') as f:
        d=set(f.readlines())


    with open(File2,'r') as f:
         e=set(f.readlines())


    with open('C:\...\results.txt','a') as f:
        for line in list(d-e):
           f.write(line)




compare(r'C:\...\original_contours.txt',r'C:\...\reprojected_contours.txt')

标准库附带了一个名为
difflib
的模块,它有许多用于各种用例的助手类和函数

值得一看


有一个名为
difflib
的模块,它随标准库一起提供,它有许多用于各种用例的帮助器类和函数

值得一看


编码='utf8'
添加到您的代码中:

with open(File1, 'r', encoding='utf8') as f:
    d=set(f.readlines())

...

with open(File2, 'r', encoding='utf8') as f:
     e=set(f.readlines())

encoding='utf8'
添加到代码中:

with open(File1, 'r', encoding='utf8') as f:
    d=set(f.readlines())

...

with open(File2, 'r', encoding='utf8') as f:
     e=set(f.readlines())

我不知道这个错误是不可调用的Unicode。请报告包括堆栈跟踪在内的确切错误。可能他提到了“unicode”对象不可调用,这可能是由于文件中的“特殊”字符。默认情况下,开放函数根据用户偏好猜测编码。如果您知道这些文件的确切编码,请在open中提及它们。否则,您可以在rb模式(二进制)下打开文件。我不认识uncallable Unicode错误。请报告包括堆栈跟踪在内的确切错误。可能他提到了“unicode”对象不可调用,这可能是由于文件中的“特殊”字符。默认情况下,开放函数根据用户偏好猜测编码。如果您知道这些文件的确切编码,请在open中提及它们。否则,您可以在rb模式(二进制)下打开文件