How to update the string with priority order in the dictionary

Advertisements

I have list of dict below

data = 
[ { 'Pencil': 'Green' }, { 'Pen': 'N/A' }, { 'Scale': 'Red' }, { 'Compass': 'N/A'}]

My priority order is below

priority_order = {'Red':4, 'Orange':3, 'Yellow':2, 'Green':1, 'Undefined': 0}

I have main variable which has to update with in priority order of values in data list of dictionary, by default main is

main = 'Undefined'

Code is below

for each in data:
    for k,v in each.items():
        if priority_order[v] > priority_order[main]:
            main = priority_order[v]

I am getting key error for this

My expected out is ‘Red’ as scale is having ‘Red’

>Solution :

data =[ { 'Pencil': 'Green' }, { 'Pen': 'N/A' }, { 'Scale': 'Red' }, { 'Compass': 'N/A'}]
priority_order = {'Red':4, 'Orange':3, 'Yellow':2, 'Green':1, 'N/A': 0}
main = 'N/A'

for each in data:
    for k,v in each.items():
        if priority_order[v] > priority_order[main]:
            main = v
print(main)

Leave a Reply Cancel reply