2.3 Funció Design Recipe
Els Sis Passos
- Exemples
- Què ha de fer la funció?
- Escriure un parell de crides d’exemple.
- Triar un nom (normalment un verb o frase verbal): Que sigui una resposta breu de "Què fa la funció"?
- Type Contract
- Quins són els tipus dels paràmetres?
- Quin és el tipus del valor retornat?
- Header
- Triar noms de paràmetre significatius
- Descripció
- Menció de cada paràmetre en la descripció.
- Descriure el valor de retorn.
- Body
- Escriure el cos de la funció.
- Test
- Provar els exemples.
Aplicar el Design Recipe
El problema:
Als Estats Units mesuren la temperatura en graus Fahrenheit i a Catalunya es mesuren en graus Celsius. A un viatger que visita sovint els dos països li seria d’ajuda tenir una funció de conversió. Escriu una funció que converteixi graus Fahrenheit a Celsius.
- Exemples
>>> convert_to_celsius(32)
0
>>> convert_to_celsius(212)
100
- Type Contract
(number) -> number
- Header
def convert_to_celsius(fahrenheit):
- Descripció
Return the number of Celsius degrees equivalent to fahrenheit degrees.
- Body
return (fahrenheit - 32) * 5 / 9
- Test
Provar els exemples.
Solució:
def convert_to_celsius(fahrenheit):
''' (number) -> number
Return the number of Celsius degrees equivalent to Fahrenheit
degrees.
>>> convert_to_ccelsius(32)
0
>>> convert_to_celsius(212)
100
'''
return (fahrenheit - 32) * 5 / 9