Python 二进制和十进制转换器

使用 Python 中的基本算法将值从十进制转换为二进制,以及将二进制转换为十进制。

在编辑器中尝试

概述

计算机以二进制格式(基数 2,使用 0 和 1)表示数据,而人类则以十进制格式(基数 10)表示数据。这些系统之间的转换在计算机工程中至关重要。

十进制到二进制是通过重复将数字除以 2 并在前面添加余数来实现的。

二进制到十进制是通过从左到右迭代位,累加按 2 的幂缩放的二进制值来实现的。

代码和执行输出

与本机二进制表示逻辑匹配的自定义算法转换器。

binary_converter.py
在编辑器中尝试
def decimal_to_binary(n):
    if n == 0:
        return "0"
    binary = ""
    while n > 0:
        binary = str(n % 2) + binary
        n //= 2
    return binary

def binary_to_decimal(b_str):
    decimal = 0
    for digit in b_str:
        decimal = decimal * 2 + int(digit)
    return decimal

dec_val = 29
bin_val = "11101"

print(f"Decimal {dec_val} to Binary: {decimal_to_binary(dec_val)}")
print(f"Binary '{bin_val}' to Decimal: {binary_to_decimal(bin_val)}")
端子输出
Decimal 29 to Binary: 11101
Binary '11101' to Decimal: 29

逐步实施

  • 低级按位运算和权限映射
  • 网络 IP 地址八位位组转换实用程序
  • 了解基本的硬件机器周期

常见问题解答

Python 有内置的基数转换方法吗?

是的。您可以使用 bin(number) (返回前缀为“0b”的字符串)转换为二进制,并使用 int(binary_string, 2) 解析 2 进制字符串。

相关主题