与sys争论

时间:2017-12-06 15:43:30

标签: python python-3.x sys

文件中的行将从上到下(一个在另一个下面)

我有2个“.txt”文件,如下所示:

#john.txt
hello     
my
name
is
John
#jack.txt

第二个是这样的:

hello
your
name
is
Jack

我将逐行比较这些文本,但问题是我写的时候

命令行sys.arg [1]和sys.argv [2]上的“python john.txt jack.txt” 将提供线条并进行比较。所以sys.argv [1]必须逐个提供文件中的行,但我只会写一次“python john.txt jack.txt”。 样本输出:

python john.txt jack.txt
True
False
True
True
False

我再说一遍。 sys.argv [1]和sys.argv [2]将逐行提供文件,比较结束时。他们将在文件中接下一行我该怎么办? 我认为它会通过使用while循环来完成但是如何?

1 个答案:

答案 0 :(得分:0)

有助于逐行比较两个文件并获得预期结果。

import sys

f1 = sys.argv[1]
f2 = sys.argv[2]

f1_data = open(f1, 'r')
f2_data = open(f2, 'r')

result = [True if f1_line == f2_line else False for f1_line, f2_line in zip(f1_data.readlines(), f2_data.readlines())]

# Result will be in list: [True, False, True, True, False]
print(result)