Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

进制转换 大整数 python

作者:术之影   发布日期:2026-08-02   浏览:31

# 进制转换 大整数 python 示例代码

def int_to_base(n, base):
    """
    将一个整数 n 转换为指定进制 base 的字符串表示。

    参数:
    n -- 需要转换的整数
    base -- 目标进制 (2 到 36)

    返回:
    转换后的字符串表示
    """
    if not (2 <= base <= 36):
        raise ValueError("Base must be between 2 and 36")

    # Python 内置函数可以处理大整数
    digits = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    if n < 0:
        sign = "-"
        n = -n
    else:
        sign = ""

    result = ""
    while n:
        result = digits[n % base] + result
        n = n // base

    return sign + result if result else "0"

def base_to_int(s, base):
    """
    将指定进制 base 的字符串 s 转换为整数。

    参数:
    s -- 需要转换的字符串
    base -- 源进制 (2 到 36)

    返回:
    转换后的整数
    """
    if not (2 <= base <= 36):
        raise ValueError("Base must be between 2 and 36")

    s = s.upper()
    digits = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    sign = 1
    if s[0] == '-':
        sign = -1
        s = s[1:]

    result = 0
    for char in s:
        if char not in digits[:base]:
            raise ValueError(f"Invalid character {char} for base {base}")
        result = result * base + digits.index(char)

    return result * sign

# 示例用法
if __name__ == "__main__":
    # 将十进制整数转换为十六进制
    print(int_to_base(255, 16))  # 输出: FF

    # 将十六进制字符串转换为十进制整数
    print(base_to_int("FF", 16))  # 输出: 255

    # 处理大整数
    big_number = 123456789012345678901234567890
    print(int_to_base(big_number, 16))  # 输出: 11F1C5D3B3E5CA71A1F2
    print(base_to_int("11F1C5D3B3E5CA71A1F2", 16))  # 输出: 123456789012345678901234567890

解释说明:

  1. int_to_base 函数:将一个整数 n 转换为指定进制 base 的字符串表示。支持从二进制到三十六进制的转换。使用了 Python 的内置大整数支持,因此可以处理非常大的整数。

  2. base_to_int 函数:将指定进制 base 的字符串 s 转换为整数。同样支持从二进制到三十六进制的转换,并且可以处理带符号的数字。

  3. 示例用法:展示了如何使用这两个函数进行进制转换,包括处理大整数的情况。

上一篇:python绝对路径

下一篇:python canvas

大家都在看

python 二维码识别

python excel 库

python时间格式

pythoneval函数用法

列表切片操作python

python读取文件路径

python windows下文件路径写法

python集合中的元素可以是列表

staticmethod在python中有

python 保存json文件

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站