[Tutor] Defining functions
Ryan Davis
ryan at acceleration.net
Fri Mar 25 00:10:40 CET 2005
Did you put them in quotes?
#
If choice == 'c':
...
#
Thanks,
Ryan
-----Original Message-----
From: tutor-bounces at python.org [mailto:tutor-bounces at python.org] On Behalf Of John Carmona
Sent: Thursday, March 24, 2005 5:52 PM
To: tutor at python.org
Subject: [Tutor] Defining functions
Hi there,
I have written (well almost as I copied some lines from an existing example)
this little programme - part of an exercise.
#By J Carmona
#Programme that compute area for
#circle, square, rectangle
def area_rect():
length = input("Length: ")
width = input ("Width: ")
print "The area is: ",length*width
def area_circ():
radius = input("What is the radius?: ")
print "The area is approximately: ", 3.14159*(radius**2)
def area_squ():
side = input ("What is the length of one side?: ")
print "The area is: ", side*side
def print_options():
print "------------------------------"
print "Options:"
print "1. print options"
print "2. calculate circle area"
print "3. calculate square area"
print "4. calculate rectangle area"
print "5. quit the programme"
print "------------------------------"
choice = input("Choose an option: ")
if choice == 1:
print_options()
elif choice == 2:
area_circ()
elif choice == 3:
area_squ()
elif choice == 4:
area_rect()
elif choice == 5:
print_options()
#Call starting menu
print_options()
If I try to change the 1, 2, 3, 4 or 5 by a letter i.e. a, b, c, d, e the
programme stop functionning. I get an error message saying that
Traceback (most recent call last):
File "C:/Python24/Example/area_cir_squ_regt.py", line 39, in -toplevel-
print_options()
File "C:/Python24/Example/area_cir_squ_regt.py", line 27, in print_options
choice = input("Choose an option: ")
File "<string>", line 0, in -toplevel-
NameError: name 'c' is not defined
What am I missing? Thanks
JC
_______________________________________________
Tutor maillist - Tutor at python.org
http://mail.python.org/mailman/listinfo/tutor
More information about the Tutor
mailing list