On Oct 18, 7:05 am, Michele Simionato <[EMAIL PROTECTED]> wrote: > On Oct 17, 5:58 pm, Ixiaus <[EMAIL PROTECTED]> wrote: > > > def bin2dec(val): > > li = list(val) > > li.reverse() > > res = [int(li[x])*2**x for x in range(len(li))] > > print sum(res) > > > It basically does the same thing int(string, 2) does. > > > Thank you for the responses! > > BTW, here is the reverse function dec2bin, so that you can > bang your head on it for a while ;) > It returns '' when number == 0, so you need to test for that case:
> def baseN(number, N=2): > """ > >>> baseN(9, 2) > '1001' > """ > assert 2 <= N <= 10 > assert isinstance(number, int) and number >= 0 if number == 0: return "0" > b = [] > while number: > b.append(str(number % N)) > number /= N > return ''.join(reversed(b)) > > Michele Simionato -- http://mail.python.org/mailman/listinfo/python-list