Python 如何将两个文本文件与文件路径进行比较,并在另一个文本文件中输出差异?
我正在编写一个代码,将两个文本文件相互比较,并将它们输出到另一个文本文件中。到目前为止,我一直在第5行中得到一个“不可调用的unicode”错误。我现在的代码缺少什么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'
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模式(二进制)下打开文件