# objspace.std.withrangelist

- name: withrangelist
- description: enable special range list implementation that does not actually create the full list until the resulting list is mutated
- command-line: –objspace-std-withrangelist
- command-line for negation: –no-objspace-std-withrangelist
- option type: boolean option
- default: False

Enable “range list” objects. They are an additional implementation of the Python `list` type, indistinguishable for the normal user. Whenever the `range` builtin is called, an range list is returned. As long as this list is not mutated (and for example only iterated over), it uses only enough memory to store the start, stop and step of the range. This makes using `range` as efficient as `xrange`, as long as the result is only used in a `for`-loop.

See the section in Standard Interpreter Optimizations for more details.