You can just construct a list from the range object:

my_list = list(range(1, 1001))

This is how you do it with generators in python2.x as well. Typically speaking, you probably don't need a list though since you can come by the value of my_list[i] more efficiently (i + 1), and if you just need to iterate over it, you can just fall back on range.

Also note that on python2.x, xrange is still indexable1. This means that range on python3.x also has the same property2

1print xrange(30)[12] works for python2.x

2The analogous statement to 1 in python3.x is print(range(30)[12]) and that works also.

Answer from mgilson on Stack Overflow
๐ŸŒ
GeeksforGeeks
geeksforgeeks.org โ€บ python โ€บ range-to-a-list-in-python
range() to a list in Python - GeeksforGeeks
July 11, 2025 - The simplest and most efficient way to convert a range object into a list is by using the list() constructor. ... This method is fast, concise, and highly readable. List comprehension provides another efficient and Pythonic way to convert a ...
Discussions

Is range(len(list)) ever Pythonic?
I will do it when (1) I need multiple indexes for each iteration (2) The iterations should skip some elements i.e. first and last (3) I don't actually need the value, just the index e.g. something like this for i in range(1, len(array) - 1): array[i] = (array[i-1] + array[i+1]) / 2 More on reddit.com
๐ŸŒ r/learnpython
79
83
September 9, 2022
How to call a range of values in a list?
Turn the dots 90 degrees: >>> print(A[1:4]) [1, 2, 3] Also, Python wants the first index of the range and the index of the element one past the last one you want. >>> print(A[1:5]) [1, 2, 3, 4] This is sort of the way C works and Python borrowed some concepts from C. Take a look at these: https://docs.python.org/3.7/tutorial/introduction.html#lists https://docs.python.org/3.7/library/stdtypes.html#common-sequence-operations More on reddit.com
๐ŸŒ r/learnpython
3
5
March 20, 2020
Understanding Range() function in python. [Level: Absolute Beginner]
You can think of range as returning a sequence of numbers. Since we use the syntax for in : to loop or iterate over a sequence, naturally we can put a range as the sequence. Does that help? More on reddit.com
๐ŸŒ r/learnpython
23
4
August 6, 2024
How do I create a "range" given two lists?
I've read this many times but I still don't understand, sorry. Perhaps someone else will come along and understand what you mean, but if not, you'll need to elaborate a bit. More on reddit.com
๐ŸŒ r/learnpython
10
5
November 24, 2016
๐ŸŒ
Stanford CS
cs.stanford.edu โ€บ people โ€บ nick โ€บ py โ€บ python-range.html
Python range() Function
The 3 parameter form begins with start number, up to but no including the stop number as usual. The difference is the "step" amount between numbers is now custom. Once the number is equal or goes beyond the stop, the range ends. As before, the stop number itself is always omitted. >>> list(range(0, 10, 2)) [0, 2, 4, 6, 8] >>> list(range(0, 10, 6)) [0, 6] >>> list(range(200, 800, 100)) [200, 300, 400, 500, 600, 700]
๐ŸŒ
W3Schools
w3schools.com โ€บ python โ€บ ref_func_range.asp
Python range() Function
Remove List Duplicates Reverse ... Training ... The range() function returns a sequence of numbers, starting from 0 by default, and increments by 1 (by default), and stops before a specified number. ... If you want ...
๐ŸŒ
Flexiple
flexiple.com โ€บ python โ€บ create-list-numbers-with-given-range-python
Create A List Of Numbers With Given Range In Python - Flexiple
March 18, 2024 - The itertools module is part of the Python standard library and is used for efficient looping and iterable manipulation. One useful function from itertools is count(). It creates an iterator that generates consecutive integers indefinitely. To create a finite range, you can combine it with islice() from the same module. ... from itertools import count, islice # Creating a list of numbers from 5 to 10 numbers = list(islice(count(5), 6)) print(numbers)
๐ŸŒ
Coursera
coursera.org โ€บ tutorials โ€บ python-range
How to Use Range in Python | Coursera
A range object saves space by returning the items of your desired sequence without creating a list. Nonetheless, you can still use Python range to create a list using the list() function.
Find elsewhere
๐ŸŒ
Kodeclik
kodeclik.com โ€บ python-convert-range-to-list
How to convert a Python range to a list
October 16, 2024 - There are three ways to convert a Python range to a list. 1. Use the list() function and apply it on the range. 2. Use a * operator to unpack the range. 3. Create an empty list and use the extend method to convert the range to a list.
๐ŸŒ
docs.python.org
docs.python.org โ€บ 3 โ€บ library โ€บ functions.html
Built-in Functions โ€” Python 3.14.6 documentation
The returned property object also has the attributes fget, fset, and fdel corresponding to the constructor arguments. Changed in version 3.5: The docstrings of property objects are now writeable. ... Attribute holding the name of the property. The name of the property can be changed at runtime. Added in version 3.13. ... Rather than being a function, range is actually an immutable sequence type, as documented in Ranges and Sequence Types โ€” list, tuple, range.
๐ŸŒ
Spark By {Examples}
sparkbyexamples.com โ€บ home โ€บ python โ€บ convert range to list in python
Convert Range to List in Python - Spark By {Examples}
May 31, 2024 - How to convert the range of values to a list in Python? There are multiple ways to convert the range to a list in Python for example you can use the
๐ŸŒ
Mimo
mimo.org โ€บ glossary โ€บ python โ€บ range-function
Mimo: The coding platform you need to learn Web Development, Python, and more.
Within for loops in Python, range() can control the number of iterations of the loop. This is useful when you need to repeat an action a specific number of times. ... With the range() function, you can generate sequences for various purposes. Note, however, that range() returns a list-like (but immutable) range object.
๐ŸŒ
W3Schools
w3schools.com โ€บ python โ€บ python_lists_access.asp
Python - Access List Items
When specifying a range, the return value will be a new list with the specified items. ... thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"] print(thislist[2:5]) Try it Yourself ยป ยท Note: The search will start at index 2 (included) and end at index 5 (not included). Remember that the first item has index 0. By leaving out the start value, the range will start at the first item: This example returns the items from the beginning to, but NOT including, "kiwi":
๐ŸŒ
W3Schools
w3schools.com โ€บ python โ€บ python_range.asp
Python range
Ranges support the len() function to get the number of elements in the range. ... If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail: sales@w3schools.com ยท If you want to report an error, ...
๐ŸŒ
Real Python
realpython.com โ€บ python-range
Python range(): Represent Numerical Ranges โ€“ Real Python
November 24, 2024 - You can create ranges by calling range() with one, two, or three arguments, as the following examples show: ... >>> list(range(5)) [0, 1, 2, 3, 4] >>> list(range(1, 7)) [1, 2, 3, 4, 5, 6] >>> list(range(1, 20, 2)) [1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
๐ŸŒ
GeeksforGeeks
geeksforgeeks.org โ€บ python โ€บ python-assign-range-of-elements-to-list
Python | Assign range of elements to List - GeeksforGeeks
April 6, 2023 - Use the list() function to create a new list from the range of elements that you want to add. Use slice notation to insert the new list at the desired position in the original list.
๐ŸŒ
GeeksforGeeks
geeksforgeeks.org โ€บ python โ€บ python-create-list-of-numbers-with-given-range
Create List of Numbers with Given Range - Python - GeeksforGeeks
Each number in this range is added to the list li. numpy.arange() from the NumPy library that generates an array of evenly spaced values over a specified range. It is highly efficient for creating large sequences of numbers, particularly when performing numerical computations or working with multidimensional data. Python ยท
Published ย  July 11, 2025
๐ŸŒ
DataCamp
datacamp.com โ€บ tutorial โ€บ python-range-function
Python Range() Function Tutorial | DataCamp
September 16, 2024 - for num in range(0.2,2.4): print(num) ... to reverse a linked list of integer values in C language. However, in Python, it can be achieved with the range() function with just interchanging the start and stop along with adding a negative step size....