On Fri, May 22, 2009 at 12:35 PM, Joel Ross <jo...@cognyx.com> wrote:
> Im using 2.6 python and when running this > > class progess(): > > def __init__(self, number, total, char): > > percentage = float(number/total*100) > percentage = int(round(percentage)) > char = char * percentage > print char > > progess(100, 999, "*") > > the "percentage = float(number/total*100)" always equals 0.0 > any ideas way this would be? You have to make the conversion of integer to float before the division. What you are calculating now is (take number = 998, total = 999) number/total = 998/999 = 0 number/total*100 = 0*100 = 0 float(number/total*100) = float(0) = 0.0 Change "float(number/total*100)" to "float(number)/total*100" and it should work: float(number) = float(998) = 998.0 float(number)/total = 998.0/999 = 0.99899899899899902 float(number)/total*100 = 0.99899899899899902 * 100 = 99.899899899899902 -- André Engels, andreeng...@gmail.com -- http://mail.python.org/mailman/listinfo/python-list