I believe, in terms of memory it is not so sufficient, you can leave it to Garbage Collector for sure
array = [.....]
# just some common comprehension
a = dict((k, v) for k, v in some_dict.iteritems() if v > 1)
# and another some logic which uses *a* object above
b = dict(zip(array, a.keys()))
Here, a is referred only once, and without creating such as disposable object:
b = dict(zip(array, [k for k, v in some_dict.iteritems() if v > 1]))
Please advise what more important factor is: readability vs memory..