Sunday 18 August 2013

Python: NameError name '[input]' is not defined

Python: NameError name '[input]' is not defined

I'm trying to make a simple little tool for converting inches to
centimeters and am stuck at trying to take a user input ('y' or 'n') for
deciding whether to do another conversion or terminate. Here's what I've
done:
import time
def intro():
print "Welcome! This program will convert inches to centimeters for
you.\n"
convert()
def convert():
input_cm = input(("Inches: "))
inches_conv = input_cm * 2.54
print "Centimeters: %f\n" % inches_conv
time.sleep(3)
restart = str(input("Do you wish to make another conversion? [y]Yes or
[n]no: "))
if restart == 'y':
convert()
elif restart == 'n':
end_fast()
else:
print "I didn't quite understand that answer. Terminating."
end_slow()
def end_fast():
print "This program will close in 5 seconds."
time.sleep(5)
def end_slow():
print "This program will close in 30 seconds."
time.sleep(30)
intro()
And this results in:
Traceback (most recent call last): File
"C:\Users\Sam\Programming\Python\the hard way\ex5.4.py", line 29, in
intro() File "C:\Users\Sam\Programming\Python\the hard way\ex5.4.py", line
5, in intro convert() File "C:\Users\Sam\Programming\Python\the hard
way\ex5.4.py", line 12, in convert restart = str(input("Do you wish to
make another conversion? [y]Yes or [n]no?\n")) File "", line 1, in
NameError: name 'y' is not defined
Help appreciated.

No comments:

Post a Comment