Python Data Persistence – Using range
Python’s built-in range ( ) function returns an immutable sequence of numbers that can be iterated over by for loop. The sequence generated by the range ( ) function depends on three parameters.
The start and step parameters are optional. If it is not used, then the start is always 0 and the step is 1. The range contains numbers between start and stop-1, separated by a step. Consider an example 2.15:
Example
range (10) generates 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 range ( 1 , 5 ) results in 1 , 2 , 3 , 4 range ( 20 , 30 , 2 ) returns 20 , 22 , 24 , 26 , 28
We can use this range object as iterable as in example 2.16. It displays squares of all odd numbers between 11-20. Remember that the last number in the range is one less than the stop parameter (and step is 1 by default)
Example
#for-3.py for num in range( 11 , 21 , 2 ): sqr=num*num print ( ' sqaure of { } is { } ' . format( num , sqr ) )
Output:
E:\python37>python for-3.py square of 11 is 121 square of 13 is 169 square of 15 is 225 square of 17 is 289 square of 19 is 361
- Python range() Method with Examples
- Python Data Persistence – Structured Python
- Python Data Persistence – for Keyword
In the previous chapter, you have used len ( ) function that returns a number of items in a sequence object. In the next example, we use len ( ) to construct a range of indices of items in a list. We traverse the list with the help of the index.
Example
#for-4.py numbers=[ 4 , 7 , 2 , 5 , 8 ] for indx in range(len(numbers)): sqr=numbers[indx]*numbers[indx] print ( ' sqaure of { } is { } ' . format ( numbers [ indx ] , sqr ) )
Output:
E:\python3 7 >python for - 4.py sqaure of 4 is 16 sqaure of 7 is 49 sqaure of 2 is 4 sqaure of 5 is 25 sqaure of 8 is 64 E:\python37>
Have a look at another example of employing for loop over a range. The following script calculates the factorial value of a number. Note that the factorial of n (mathematical notation is n!) is the cumulative product of all integers between the range of 1 to n.
Example
#factorial.py n=int ( input ( " enter number . . " ) ) #calculating factorial of n f = 1 for i in range ( 1 , n+1 ): f = f * i print ( ' factorial of { } = { } ' . format ( n , f ) )
Output:
E:\python37>python factorial.py enter number..5 factorial of 5 = 120