PYTHON base_convert

is this article helpful?
|
Python replacement for PHP's base_convert [ edit | history ]
def base_convert(number, fromBase, toBase):
    try:
        # Convert number to base 10
        base10 = int(number, fromBase)
    except ValueError:
        raise
        
    if toBase < 2 or toBase > 36:
        raise NotImplementedError
        
    output_value = ''
    digits = "0123456789abcdefghijklmnopqrstuvwxyz"
    sign = ''
    
    if base10 == 0:
        return '0'
    elif base10 < 0:
        sign = '-'
        base10 = -base10
    
    # Convert to base toBase    
    s = ''
    while base10 != 0:
        r = base10 % toBase
        r = int(r)
        s = digits[r] + s
        base10 //= toBase
        
    output_value = sign + s
    return output_value

PHP base_convert

PHP original manual for base_convert [ show | php.net ]

base_convert

(PHP 4, PHP 5)

base_convertConvert a number between arbitrary bases

Description

string base_convert ( string $number , int $frombase , int $tobase )

Returns a string containing number represented in base tobase . The base in which number is given is specified in frombase . Both frombase and tobase have to be between 2 and 36, inclusive. Digits in numbers with a base higher than 10 will be represented with the letters a-z, with a meaning 10, b meaning 11 and z meaning 35.

Warning

base_convert() may lose precision on large numbers due to properties related to the internal "double" or "float" type used. Please see the Floating point numbers section in the manual for more specific information and limitations.

Parameters

number

The number to convert

frombase

The base number is in

tobase

The base to convert number to

Return Values

number converted to base tobase

Examples

Example #1 base_convert() example

<?php
$hexadecimal 
'A37334';
echo 
base_convert($hexadecimal162);
?>

The above example will output:

101000110111001100110100

See Also

  • intval() - Get the integer value of a variable