Help with python functions?

Terry Reedy tjreedy at udel.edu
Mon Sep 23 18:48:20 EDT 2013


On 9/23/2013 6:32 PM, kjakupak at gmail.com wrote:
> On Monday, September 23, 2013 9:56:45 AM UTC-4, Steven D'Aprano wrote:
>> On Mon, 23 Sep 2013 05:57:34 -0700, kjakupak wrote:
>>
>> Now you're done! On to the next function...
>>
>>
>>
>> --
>>
>> Steven
>
> def temp(T, from_unit, to_unit):
>      conversion_table = {('c', 'k'):lambda x: x + 273.15,
>                          ('c', 'f'):lambda x: (x * (9.0/5)) + 32,
>                          ('k', 'c'):lambda x: x - 273.15,
>                          ('k', 'f'):lambda x: (x * (9.0/5)) - 459.67,
>                          ('f', 'c'):lambda x: (x - 32) * (5.0/9),
>                          ('f', 'k'):lambda x: (x + 459.67) * (5.0/9)}
>      f = conversion_table[(from_unit.lower(), to_unit.lower())]
>      return f(T)

What happens if you run some tests? If you use unittest, you can use the 
assertAlmostEqualMethod, or just write something similar yourself. Be 
careful with values near 0..

At minimum, how many tests do you need, 6 or 9?


-- 
Terry Jan Reedy




More information about the Python-list mailing list