两个文本文件之间的差异和交叉报告

2022-01-25 00:00:00 python list shell compare

问题描述

免责声明:我是一般编程和脚本的新手,所以请原谅缺乏技术术语

所以我有两个包含列出名称的文本文件数据集:

So i have two text file data sets that contain names listed:

First File | Second File
bob        | bob
mark       | mark
larry      | bruce
tom        | tom

我想运行一个脚本(pref python),在一个文本文件中输出相交线,在另一个文本文件中输出不同的线,例如:

I would like to run a script (pref python) that outputs the intersection lines in one text file and the different lines in another text file, ex:

matches.txt:

bob 
mark 
tom 

differences.txt:

bruce

我将如何使用 Python 完成此任务?或者使用 Unix 命令行,如果它足够简单的话?

How would I accomplish this with Python? Or with a Unix command line, if it's easy enough?


解决方案

words1 = set(open("some1.txt").read().split())
words2 = set(open("some2.txt").read().split())

duplicates  = words1.intersection(words2)
uniques = words1.difference(words2).union(words2.difference(words1))

print "Duplicates(%d):%s"%(len(duplicates),duplicates)
print "
Uniques(%d):%s"%(len(uniques),uniques)

至少是这样的

相关文章