original
[{'l1Key': 'L1_SHARE', 'l2Key': None}, {'l1Key': 'L1_BROWSE_SOURCE', 'l2Key': None}, {'l1Key': 'L1_BLOCK_SOURCE', 'l2Key': None}, {'l1Key': 'L1_HIDE_NEWS', 'l2Key': None}, {'l1Key': 'NA', 'l2Key': 'HTML_2'}, {'l1Key': 'L1_SHOW_LESS', 'l2Key': 'HTML_2'}, {'l1Key': 'L1_SHOW_MORE', 'l2Key': None}]
expected answer
[{'l1Key': 'L1_SHARE'}, {'l1Key': 'L1_BROWSE_SOURCE'}, {'l1Key': 'L1_BLOCK_SOURCE', }, {'l1Key': 'L1_HIDE_NEWS'}, {'l1Key': 'NA', 'l2Key': 'HTML_2'}, {'l1Key': 'L1_SHOW_LESS', 'l2Key': 'HTML_2'}, {'l1Key': 'L1_SHOW_MORE'}]
i have tried with few codes but i am not getting as expected
[d for d in arr if all(d.values())]
[{'l1Key': 'NA', 'l2Key': 'HTML_2'}, {'l1Key': 'L1_SHOW_LESS', 'l2Key': 'HTML_2'}] //wrong as other key value pairs are all deleted if one of the keys is none or null