#version 0
import sys
f1 = open(sys.argv[1], "r")
f2 = open(sys.argv[2], "r")
fileOne = f1.readlines()
fileTwo = f2.readlines()
f1.close()
f2.close()
outFile1 = open(sys.argv[3], "w")
outFile2 = open(sys.argv[4], "w")
for i in fileOne:
if not i in fileTwo:
outFile1.write(i)
for i in fileTwo:
if not i in fileOne:
outFile2.write(i)
outFile1.close()
outFile2.close()
#first time refacotring
import sys
from operator import attrgetter,itemgetter
#verify inputs
USAGE='''
%s file1 file2 output1 output2
'''% __file__
if len(sys.argv)<5:
print USAGE
sys.exit(2)
#open files with try
try:
f1 = open(sys.argv[1], "r")
f2 = open(sys.argv[2], "r")
except Exception,e:
print 'encounter issues %s, while opening in files: %s %s' % (str(e),itemgetter(1)(sys.argv),itemgetter(2)(sys.argv))
sys.exit(1)
fileOne = f1.readlines()
fileTwo = f2.readlines()
f1.close()
f2.close()
#open files with try
try:
outFile1 = open(sys.argv[3], "w")
outFile2 = open(sys.argv[4], "w")
except Exception,e:
print 'encounter issues %s, while opening out files: %s %s' % (str(e),itemgetter(3)(sys.argv),itemgetter(4)(sys.argv))
sys.exit(1)
l_minus=lambda x,y:list(set(x)-set(y))
outFile1.write('\n'.join(l_minus(fileOne,fileTwo)))
outFile2.write('\n'.join(l_minus(fileTwo,fileOne)))
outFile1.close()
outFile2.close()
#2nd time refactoring
import sys
from operator import attrgetter,itemgetter
#verify inputs
USAGE='''
%s file1 file2 output1 output2
'''% __file__
if len(sys.argv)<5:
print USAGE
sys.exit(2)
#open files with try
with open(itemgetter(1)(sys.argv), "r") as f1, open(itemgetter(2)(sys.argv), "r") as f2:
fileOne = f1.readlines()
fileTwo = f2.readlines()
#list subset
l_minus=lambda x,y:list(set(x)-set(y))
#open files with try
with open(itemgetter(3)(sys.argv), "w") as outFile1, open(itemgetter(4)(sys.argv), "w") as outFile2:
outFile1.write('\n'.join(l_minus(fileOne,fileTwo)))
outFile2.write('\n'.join(l_minus(fileTwo,fileOne)))
Diff to Previous Revision
--- revision 1 2012-11-12 20:56:58
+++ revision 2 2012-11-12 20:59:54
@@ -1,4 +1,4 @@
-#version 1
+#version 0
import sys
f1 = open(sys.argv[1], "r")
@@ -24,7 +24,7 @@
outFile1.close()
outFile2.close()
-#after first refacotring
+#first time refacotring
import sys
from operator import attrgetter,itemgetter
@@ -68,7 +68,7 @@
outFile2.close()
-#refactoring at 2nd time
+#2nd time refactoring
import sys
from operator import attrgetter,itemgetter