Il giorno 16 giugno 2013 14:42, Gianni Di Noia ha scritto:
>
>
>> > def percentage(part, total):
>> > return part * 100.0 / total
>> >
>> > >>> percentage(8, 80)
>> > 10
>>
>> Questo significa: "la percentuale di ottanta che dà come risultato otto è
>> dieci". Poco chiaro e prono ad errori. Perché inverti i fattori?
>
>
> se ho preso 8 mele da una cesta che ne contiene 80, che % ho preso?
> capita spesso di rispondere a domande così
>
Perfetto. Ma allora non si tratta di «8% of 80», bensì del rapporto fra 8 e
80 (i.e. otto ottantesimi) espresso in centesimi (un tizio barbuto direbbe
che «le parole sono importanti»). Del tipo:
def hundredths_from_ratio(amount, denominator=None):
result = amount * 100.0
if denominator:
result /= denominator
return result
>>> hundredths_from_ratio(8, 80)
10.0
>>> otto_ottantesimi = 8 / 80
>>> hundredths_from_ratio(otto_ottantesimi)
10.0
Può avere senso?
--
Nadir
_______________________________________________
Python mailing list
[email protected]
http://lists.python.it/mailman/listinfo/python