我必须比较两个巨大的文本文件,结构相同但值不同。文件的布局有点像这样
File 1 :
Name : ABCD
Insurance Comapmy : Comp1
Spouse : BCDF
Doctor : Dr AB
Membership No : 123456
Amount : 1234
Insurance Claimed : Y
Name : ABCE
Insurance Comapmy : Comp2
Spouse : BCDE
Doctor : Dr AB
Membership No : 123457
Amount : 123
Insurance Claimed : N
Name : ABCF
Insurance Comapmy : Comp1
Spouse : BCDG
Doctor : Dr AC
Membership No : 123458
Amount : 12345
Insurance Claimed : Y
..... and so on
File 2 :
Name : ABCD
Insurance Comapmy : Comp1
Spouse : BCDF
Doctor : Dr AB
Membership No : 123456
Amount : 1224
Insurance Claimed : Y
Name : ABCE
Insurance Comapmy : Comp2
Spouse : BCDE
Doctor : Dr AB
Membership No : 123457
Amount : 123
Insurance Claimed : N
Name : ABCF
Insurance Comapmy : Comp1
Spouse : BCDG
Doctor : Dr AB
Membership No : 123458
Amount : 12345
Insurance Claimed : Y
..... and so on
现在我必须比较两个文件并将输出写入第三个文件
如果记录匹配,那么我必须跳过,如果它不同,那么我必须以下面的格式在下一个文件中写下记录。
File 3 :
Membership No : 123456
>Amount : 1234
<Amount : 1224
Membership No : 123458
>Doctor : Dr AC
<Doctor : Dr AB
比较工作正常,显示所有差异。
问题是显示会员编号
我正在存储会员资格并显示最新会员资格。但是如果在未获取最新成员资格no的情况下发生差异,那么它将显示错误的成员资格号。
与第一种情况一样,在金额字段中会员资格之后出现差异。所以我们有最新的会员资格。它会显示出来。
但在第二种情况下,差异发生在新成员资格之前,在医生领域。所以我们没有获得最新的会员资格,而是展示了旧会员资格。
我正在取得会员资格。像这样并将其存储在列表中:
if "Membership No :" in f1_line:
if f1_line not in out:
out.append(f1_line.split(" Membership No : "))
out是所有会员编号
的列表我想搜索下一个会员号并在“名称”字段到来时存储它。但我无法通过“mmap”取得成功。