On 02/11/2013 03:07 PM, Pravya Reddy wrote:
Can you please complete the code.

#!/usr/bin/env python
""" One function receives a value in inches and returns the equivalent
value in
cms like cm = 2.54 * in.The other function receives a value in cms and
returns
the equivalent value in inches like in = cm / 2.54."""

def conversion(inch,cm):
     """returns the value in cm and in."""
     return (2.54 * float(inches))
     return (float(cm) / 2.54)

This second line does nothing, since the first line always returns.
But it doesn't matter much, since you never call it. Don't you want two functions?

def GetInt(prompt):
     """Returns a number, or None if user doesn't answer."""
     while True:
         said = input(input(prompt))

This has been corrected several times, by various people. What do you think it does, and what do you wish it would do? Is there ever a reason to call input with the results of a call to input?

         if not said:
             return None
         try:
             number = int(said)
         except ValueError:
                 print (said, "is not a number.")
                 continue
                 return number

The return never gets executed, since it follows an unconditional continue statement. Do you perhaps want it dedented?

def Test():
     first = GetInt('Please enter inches:')
     if first:
         second = GetInt('Please enter cms:')

Do you always want to do a pair of conversions? if not, why are you asking for both values before doing anything?

         print(first, "*", 2.54, "=", "cms")

This prints an equation without actually printing a result.

         print(second, "/", 2.54, "=", "in")

Ditto.

Test()




--
DaveA
_______________________________________________
Tutor maillist  -  [email protected]
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to