#Program to print fibonacci until a range.
print \"Fibonacci Series\"
print \"Enter a range\"
range = raw_input()
first=1
second =1
print first
print \", \"
print second
range = raw_input()
sets range
to be a string, e.g. it is assigning range = '5'
rather than range = 5
.
The comparison third < range
will therefore always be True
in Python 2.x *, as integers always compare less than strings:
>>> 10 < '5'
True
The minimal fix is to convert the input to an integer:
range = int(raw_input())
However, note that range is a built-in function, so you should pick a different name for that variable.
* Note that in 3.x comparing a string with an integer causes an error:
>>> 10 < '5'
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
10 < '5'
TypeError: unorderable types: int() < str()