I am trying to find the difference between the files and getting the output as well. but if someone could help me on how can i write that to new json file again. Here is my code
def check(a,b):
diff = False
for a_key in a:
if a_key not in b:
diff = True
#print "key %s in a, but not in b" %a_key
print a_key,a[a_key]
elif a[a_key] != b[a_key]:
diff = True
#print "key %s in a and in b, but values differ (%s in a and %s in b)" %(a_key, a[a_key], b[a_key])
print a_key,b[a_key]
if not diff:
print "both files are identical"
I would like to write the output to json file instead of printing on console. I tried this after print but not desired o/p. Any help is appreciated.
res=a_key,b[a_key]
out_file = open("out.json","a")
json.dump(res,out_file, indent=4)
out_file.close()
Here are the Sample files. file1:
{
"abc": [
"build=1.0.44.0",
"proxy=none"
],
"xyz": [
"proxy=none",
"build=1.0.129.0"
],
"lmn": [
"build=1.0.127.0",
"proxy=none"
],
"test": [
"build=1.0.144.0",
"proxy=http"
],
"alfa": [
"build=1.0.22.0",
"proxy=http"
],
"beta": [
"proxy=http",
"build=1.0.17.0"
]
}
Here is the File2:
{
"abc": [
"build=1.0.43.0",
"proxy=none"
],
"xyz": [
"proxy=none",
"build=1.0.128.0"
],
"lmn": [
"build=1.0.127.0",
"proxy=none"
],
"test": [
"build=1.0.141.0",
"proxy=http"
],
"alfa": [],
"beta": [
"proxy=http",
"build=1.0.17.0"
]
}
FINAL Expected output:
{
"abc": "1.0.44.0",
"xyz": "1.0.129.0",
"test":"1.0.144.0",
"alfa":"1.0.22.0"
}