0

I have 2 json files that i would like to compare using Python and return if there is a match or not into a new file.

If a value in ESoutput matches a value in staticlist it returns the value and the word Pass if it does not then it returns the value and the Fail.

I am looking for guidance on how best to achieve this.

ESoutput.json

["NGV34", "NGQ34", "NGX34", "NGQ33", "NGZ34", "NGZ1", "NGJ0", "NGJ1", "NGM0", "NGN32", "NGH4", "NGN7", "NGH0", "NGF3", "NGZ5", "NGU34", "NGQ5", "NGZ4", "NGU7", "NGG4", "NGM32", "NGV9", "NGK3", "NGX33", "NGG6", "NGH7", "NGV6", "NGH8", "NGG1", "NGQ8", "NGQ3", "NGN9", "NGF6", "NGK8", "NGH2", "NGN0", "NGN33", "NGF33", "NGM33", "NGU1", "NGN1", "NGU0", "NGX0", "NGZ8", "NGJ3", "NGN6", "NGM3", "NGQ9", "NGN2", "NGZ0", "NGN8", "NGX3", "NGF8", "NGF34", "NGG0", "NGG7", "NGG9", "NGX2", "NGF9", "NGM1", "NGH34", "NGU33", "NGX32", "NGZ32", "NGQ32", "NGQ1", "NGH1", "NGK0", "NGK1", "NGH6", "NGF5", "NGU6", "NGX1", "NGQ7", "NGZ6", "NGM9", "NGV4", "NGG8", "NGV3", "NGQ6", "NGM8", "NGV5", "NGX9", "NGG34", "NGF4", "NGV0", "NGJ4", "NGN5", "NGQ0", "NGJ34", "NGH33", "NGK33", "NGG33", "NGK32", "NGF0", "NGV7", "NGU3", "NGU32", "NGU4", "NGM34", "NGG5", "NGF1", "NGK9", "NGV2", "NGK5", "NGJ7", "NGM7", "NGX4", "NGX5", "NGU2", "NGJ8", "NGM6", "NGX8", "NGQ4", "NGH5", "NGZ33", "NGV33", "NGV32", "NGJ2", "NGV1", "NGK34", "NGK4", "NGU8", "NGN34", "NGG3", "NGZ3", "NGJ5", "NGH3", "NGQ2", "NGM2", "NGZ2", "NGG2", "NGF2", "NGU9", "NGF7", "NGJ6", "NGZ9", "NGN4", "NGX6", "NGK6", "NGM4", "NGM5", "NGU5", "NGK7", "NGV8", "NGJ33", "NGZ7", "NGX7", "NGJ9", "NGH9", "NGN3"]

staticlist.json

{
  "NG": [
    {
      "secid": "NGF2",
      "lasttrade": "29/12/2021"
    },
    {
      "secid": "NGG2",
      "lasttrade": "28/01/2022"
    },
    {
      "secid": "NGH2",
      "lasttrade": "25/02/2022"
    },
    {
      "secid": "NGJ2",
      "lasttrade": "29/03/2022"
    },
    {
      "secid": "NGK2",
      "lasttrade": "26/04/2022"
    },
    {
      "secid": "NGM2",
      "lasttrade": "26/05/2022"
    },
    {
      "secid": "NGN2",
      "lasttrade": "28/06/2022"
    },
    {
      "secid": "NGQ2",
      "lasttrade": "27/07/2022"
    },
    {
      "secid": "NGU2",
      "lasttrade": "29/08/2022"
    },
    {
      "secid": "NGV2",
      "lasttrade": "28/09/2022"
    },
    {
      "secid": "NGX2",
      "lasttrade": "27/10/2022"
    },
    {
      "secid": "NGZ2",
      "lasttrade": "28/11/2022"
    }
  ]
}
  1. I have looked at Comparing list values to the key values of a dictionary

  2. How to compare two JSON objects with the same elements in a different order equal?

  3. How to compare a list of a dict to a dictionary?

using the answer from 3) x = {k: d.get(k, 'no match') for k in l}

I came up with the below

x = {k: staticlist.get(k, 'no match') for k in ESoutput}

results are not what i was expecting

{'NGV34': 'no match', 'NGQ34': 'no match', 'NGX34': 'no match', 'NGQ33': 'no match', 'NGZ34': 'no match', 'NGZ1': 'no match', 'NGJ0': 'no match', 'NGJ1': 'no match', 'NGM0': 'no match', 'NGN32': 'no match', 'NGH4': 'no match', 'NGN7': 'no match', 'NGH0': 'no match', 'NGF3': 'no match', 'NGZ5': 'no match', 'NGU34': 'no match', 'NGQ5': 'no match', 'NGZ4': 'no match', 'NGU7': 'no match', 'NGG4': 'no match', 'NGM32': 'no match', 'NGV9': 'no match', 'NGK3': 'no match', 'NGX33': 'no match', 'NGG6': 'no match', 'NGH7': 'no match', 'NGV6': 'no match', 'NGH8': 'no match', 'NGG1': 'no match', 'NGQ8': 'no match', 'NGQ3': 'no match', 'NGN9': 'no match', 'NGF6': 'no match', 'NGK8': 'no match', 'NGH2': 'no match', 'NGN0': 'no match', 'NGN33': 'no match', 'NGF33': 'no match', 'NGM33': 'no match', 'NGU1': 'no match', 'NGN1': 'no match', 'NGU0': 'no match', 'NGX0': 'no match', 'NGZ8': 'no match', 'NGJ3': 'no match', 'NGN6': 'no match', 'NGM3': 'no match', 'NGQ9': 'no match', 'NGN2': 'no match', 'NGZ0': 'no match', 'NGN8': 'no match', 'NGX3': 'no match', 'NGF8': 'no match', 'NGF34': 'no match', 'NGG0': 'no match', 'NGG7': 'no match', 'NGG9': 'no match', 'NGX2': 'no match', 'NGF9': 'no match', 'NGM1': 'no match', 'NGH34': 'no match', 'NGU33': 'no match', 'NGX32': 'no match', 'NGZ32': 'no match', 'NGQ32': 'no match', 'NGQ1': 'no match', 'NGH1': 'no match', 'NGK0': 'no match', 'NGK1': 'no match', 'NGH6': 'no match', 'NGF5': 'no match', 'NGU6': 'no match', 'NGX1': 'no match', 'NGQ7': 'no match', 'NGZ6': 'no match', 'NGM9': 'no match', 'NGV4': 'no match', 'NGG8': 'no match', 'NGV3': 'no match', 'NGQ6': 'no match', 'NGM8': 'no match', 'NGV5': 'no match', 'NGX9': 'no match', 'NGG34': 'no match', 'NGF4': 'no match', 'NGV0': 'no match', 'NGJ4': 'no match', 'NGN5': 'no match', 'NGQ0': 'no match', 'NGJ34': 'no match', 'NGH33': 'no match', 'NGK33': 'no match', 'NGG33': 'no match', 'NGK32': 'no match', 'NGF0': 'no match', 'NGV7': 'no match', 'NGU3': 'no match', 'NGU32': 'no match', 'NGU4': 'no match', 'NGM34': 'no match', 'NGG5': 'no match', 'NGF1': 'no match', 'NGK9': 'no match', 'NGV2': 'no match', 'NGK5': 'no match', 'NGJ7': 'no match', 'NGM7': 'no match', 'NGX4': 'no match', 'NGX5': 'no match', 'NGU2': 'no match', 'NGJ8': 'no match', 'NGM6': 'no match', 'NGX8': 'no match', 'NGQ4': 'no match', 'NGH5': 'no match', 'NGZ33': 'no match', 'NGV33': 'no match', 'NGV32': 'no match', 'NGJ2': 'no match', 'NGV1': 'no match', 'NGK34': 'no match', 'NGK4': 'no match', 'NGU8': 'no match', 'NGN34': 'no match', 'NGG3': 'no match', 'NGZ3': 'no match', 'NGJ5': 'no match', 'NGH3': 'no match', 'NGQ2': 'no match', 'NGM2': 'no match', 'NGZ2': 'no match', 'NGG2': 'no match', 'NGF2': 'no match', 'NGU9': 'no match', 'NGF7': 'no match', 'NGJ6': 'no match', 'NGZ9': 'no match', 'NGN4': 'no match', 'NGX6': 'no match', 'NGK6': 'no match', 'NGM4': 'no match', 'NGM5': 'no match', 'NGU5': 'no match', 'NGK7': 'no match', 'NGV8': 'no match', 'NGJ33': 'no match', 'NGZ7': 'no match', 'NGX7': 'no match', 'NGJ9': 'no match', 'NGH9': 'no match', 'NGN3': 'no match'}

0 Answers0