@cached_property def my_collection(): return [1, 2, 3] def do_stuff(): for i in my_collection: print i I try to cache a list, set or map that I can iterate on. However, doing that, I get TypeError: 'cached_property' object is not iterable. Any other workarounds?