New to python, baffled by program output
fuzzyman at gmail.com
Thu Sep 30 21:38:07 CEST 2004
On 30 Sep 2004 12:15:24 -0700, Lazareth at gmail.com (Lazareth S. Link)
>Hiya to whoever might stumble across this.
>I've recently taken up learning how to script/program in python.
>I've made my first program, a simple fahrenheit-celsius converter,
>For some reason I fail to comprehend, the program writes a line of
>"None" when rerun in a while loop.
>Here is the code:
> celsius = input("Input celsius: ")
> print "Fahrenheit: ",cel_fah(celsius)
> fahrenheit = input("Input fahrenheit: ")
> print "Celsius: ",fah_cel(fahrenheit)
> return 9.0/5.0*placeholder+32
> return (placeholder-32.0)*5.0/9.0
> print "press 'c' to convert celsius to fahrenheit."
> print "press 'f' to convert fahrenheit to celsius."
> print "press 'q' to exit program."
>choice = "n"
>while choice != "q":
> choice = raw_input("Choice: ")
> if choice == "c":
> elif choice == "f":
> print options()
This is your problem.
You're telling python to print the resultof the function options()
When called options prints the options - but it doesn't have an
explicit return value. This means that it returns None when it has
finished and python duly prints that for you.
Replace 'print options()' with just 'options()' which will just call
the options procedure without expecting a return value.
>Any of you know why it prints that line? Is is just my comp?
>If any applies, how to get around it?
>Would greatly appreciate the help.
More information about the Python-list