What is the difference between `range(5)` and `list(range(5))` in Python? | Sololearn: Learn to code for FREE!
New course! Every coder should learn Generative AI!
Try a free lesson
+ 2

What is the difference between `range(5)` and `list(range(5))` in Python?

18th Aug 2023, 3:39 PM
Zahed Shaikh
Zahed Shaikh - avatar
4 Answers
+ 4
range(5): This creates a sequence of numbers from 0 to 4 but doesn't list them out immediately. It's a compact way to represent a range. list(range(5)): This takes that sequence and lists out the numbers, giving you a list [0, 1, 2, 3, 4]. It's like turning the range into an actual list of numbers.
18th Aug 2023, 3:46 PM
Sakshi
Sakshi - avatar
+ 3
Zahed Shaikh , I wonder why did you ask a question and then answer it immediately, are there any purposes or reasons for this? Just asking..
18th Aug 2023, 3:45 PM
Dragon RB
Dragon RB - avatar
+ 3
Dragon RB perhaps the OP is hoping to qualify for the Self-Learning badge.
18th Aug 2023, 9:41 PM
Brian
Brian - avatar
+ 2
`range(5)` creates a range object that represents the numbers from 0 up to (but not including) 5. `list(range(5))` converts this range object into a list containing the numbers `[0, 1, 2, 3, 4]`. Explanation: When you use `range(5)`, you're creating a range object that is a memory-efficient way of representing a sequence of numbers. It doesn't actually generate all the numbers at once. On the other hand, `list(range(5))` converts the range object into a list, so you can see the actual numbers generated by the range.
18th Aug 2023, 3:41 PM
Zahed Shaikh
Zahed Shaikh - avatar