用于比较两个文件并输出差异的Python代码

用于比较两个文件并输出差异的Python代码,python,Python,我有代码比较两个不同的文件,每个文件中有特定的行,并打印差异。假设两个文件有一行相同,但在其中一个文件中,这一行在最后有一个额外的空间 例子 文件1: 1) 我想比较一下 文件2: 1) 我要比较的行(该行末尾有一个额外的空格) 当前代码认为,由于文件2结尾的空格,这些行不同,如何修改代码,从而忽略了行末尾的空间,并且不考虑这些行不同。 当前代码: 您当前剥离读取字符串,因此删除第一行之前和最后一行之后的空格,然后在换行处拆分字符串。你想要的是把每一条线都剥掉。 使用类似 f1 = [line.

我有代码比较两个不同的文件,每个文件中有特定的行,并打印差异。假设两个文件有一行相同,但在其中一个文件中,这一行在最后有一个额外的空间

例子 文件1:

1) 我想比较一下

文件2:

1) 我要比较的行(该行末尾有一个额外的空格)

当前代码认为,由于文件2结尾的空格,这些行不同,如何修改代码,从而忽略了行末尾的空间,并且不考虑这些行不同。 当前代码:


您当前剥离读取字符串,因此删除第一行之前和最后一行之后的空格,然后在换行处拆分字符串。你想要的是把每一条线都剥掉。 使用类似

f1 = [line.strip() for line in f.readlines()]


f2也是如此。我也会考虑使用<代码> RStrase<代码>,而不是<代码>条目>代码>只删除尾随空白,因为在标记缩进和段落时,领头通常是重要的。

您当前将读取的字符串剥离,因此在第一行和最后一行之前移除空白,然后在换行符中拆分字符串。你想要的是把每一条线都剥掉。 使用类似

f1 = [line.strip() for line in f.readlines()]


f2也是如此。我也会考虑使用<代码> RStrase<代码>,而不是<代码>条带>代码>只删除尾随空白,因为在标记缩进和段落时,引导通常很重要。

您需要<代码>条()/<代码> <代码> f1 < /代码>中的每个字符串。使用列表理解。非常感谢David,这很有效。您需要
strip()
f1中的每个字符串。使用列表理解。非常感谢David,这没问题。如果它解决了你的问题,考虑一下人们知道你的问题已经解决的答案。没问题。如果它解决了你的问题,考虑一下人们知道你的问题得到解决的答案。
f1 = [line.strip() for line in f.splitlines()]