>>> def f(d):
... for i in set(d):
... e = d[i]
... if isinstance(e, dict):
... f(e)
... elif e == 0:
... del d[i]
...
>>> d = {'user1': {'var1': 2,
... 'var2': 0,
... 'var3': 1,
... 'var4': 0},
... 'user2': {'var1': 0,
... 'var2': 1,
... 'var3': 0,
... 'var4': 0},
... 'user3': {'var1': 1,
... 'var2': 0,
... 'var3': 0,
... 'var4': 0}}
>>>
>>> f(d)
>>> d
{'user3': {'var1': 1}, 'user2': {'var2': 1}, 'user1': {'var1': 2, 'var3': 1}}
>>>
list = {'user1' : { 'var1': 2, 'var2': 0, 'var3': 1, 'var4': 0}, 'user2' : {'var1': 0, 'var2': 1, 'var3': 0, 'var4': 0}, 'user3' : { 'var1':1, 'var2': 0, 'var3':0, 'var4':0}}
for u in list:
for i in list[u]:
if list[u][i] == 0:
del list[u][i]
print(list)