subscriptiondifference.py 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #!/usr/bin/env python
  2. import csv
  3. def readCSV(file):
  4. #https://www.digitalocean.com/community/tutorials/parse-csv-files-in-python#parsing-a-csv-file-in-python
  5. with open(file, 'r', encoding='utf-8') as csv_file:
  6. parsedCSV = csv.reader(csv_file)
  7. jsonDict = []
  8. listofnames = []
  9. for row in parsedCSV:
  10. if (row == [] or row == None):
  11. continue
  12. url = row[1]
  13. name = row[2]
  14. entry = {"name": name, "url": url}
  15. jsonDict.append(name)
  16. return jsonDict
  17. account1csv = readCSV("subscriptions.csv")
  18. account2csv = readCSV("subscriptions2.csv")
  19. def setFormatter(setList, symbol):
  20. newList = []
  21. for val in setList:
  22. newList.append(f"{symbol} {val}")
  23. return newList
  24. #https://www.geeksforgeeks.org/python-find-missing-additional-values-two-lists/
  25. print("Account 1")
  26. acc1dif = set(account2csv).difference(account1csv)
  27. acc1d = setFormatter(acc1dif, "-")
  28. acc1add = set(account1csv).difference(account2csv)
  29. acc1a = setFormatter(acc1dif, "+")
  30. print("\n".join(f"{x}\t\t|\t{y}" for x,y in zip(acc1d, acc1a)))
  31. print()
  32. print("Account 2")
  33. acc2dif = set(account1csv).difference(account2csv)
  34. setFormatter(acc2dif, "-")
  35. acc2add = set(account2csv).difference(account1csv)
  36. setFormatter(acc2dif, "+")