def cleandict(d):
    if not isinstance(d, dict):
        return d
return dict((k, cleandict(v)) for k, v in d.items() if v is not None)
mydict = dict(dict1=dict(key1='value1', key2=None))
print(cleandict(mydict))
Исключить пустые/нулевые значения из сериализации JSON