Difference between revisions of "Base Conversion"

From PeformIQ Upgrade
Jump to navigation Jump to search
Line 1: Line 1:
=Examples=
=Examples=


From http://code.activestate.com/recipes/65212/
A couple of code examples extracted from http://code.activestate.com/recipes/65212/


<pre>
<pre>
Line 27: Line 27:


     return s
     return s
</pre>
<pre>
def baseN(num,b,numerals="0123456789abcdefghijklmnopqrstuvwxyz"):
    return ((num == 0) and  "0" ) or ( baseN(num // b, b).lstrip("0") + numerals[num % b])
</pre>
</pre>


[[Category:Python]]
[[Category:Python]]
[[Category:Mathematics]]
[[Category:Mathematics]]

Revision as of 07:46, 14 April 2009

Examples

A couple of code examples extracted from http://code.activestate.com/recipes/65212/

def baseconvert(n, base):
    """convert positive decimal integer n to equivalent in another base (2-36)"""

    digits = "0123456789abcdefghijklmnopqrstuvwxyz"

    try:
        n = int(n)
        base = int(base)
    except:
        return ""

    if n < 0 or base < 2 or base > 36:
        return ""

    s = ""
    while 1:
        r = n % base
        s = digits[r] + s
        n = n / base
        if n == 0:
            break

    return s
def baseN(num,b,numerals="0123456789abcdefghijklmnopqrstuvwxyz"):
    return ((num == 0) and  "0" ) or ( baseN(num // b, b).lstrip("0") + numerals[num % b])