range() to a list in Python

Often times we want to create a list containing a continuous value like, in a range of 100-200. Let’s discuss how to create a list using the range() function.

Will this work ?

filter_none

edit
close

play_arrow

link
brightness_4
code

# Create a list in a range of 10-20
My_list = [range(10, 20, 1)]
  
# Print the list
print(My_list)

chevron_right


Output :

As we can see in the output, the result is not exactly what we were expecting because Python does not unpack the result of the range() function.

Code #1: We can use argument-unpacking operator i.e. *.

filter_none

edit
close

play_arrow

link
brightness_4
code

# Create a list in a range of 10-20
My_list = [*range(10, 21, 1)]
  
# Print the list
print(My_list)

chevron_right


Output :

As we can see in the output, the argument-unpacking operator has successfully unpacked the result of the range function.
 
Code #2 : We can use the extend() function to unpack the result of range function.

filter_none

edit
close

play_arrow

link
brightness_4
code

# Create an empty list
My_list = []
  
# Value to begin and end with
start, end = 10, 20
  
# Check if start value is smaller than end value
if start < end:
    # unpack the result
    My_list.extend(range(start, end))
    # Append the last value
    My_list.append(end)
  
# Print the list
print(My_list)

chevron_right


Output :



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.