首页  > 教育解读  > 二进制怎么转成str

二进制怎么转成str

2025-05-01 00:00:37
灯塔何老师
灯塔何老师已认证

灯塔何老师为您分享以下优质知识

将二进制转换为字符串在Python中可以通过以下两种常见方法实现:

方法一:使用内置函数 `bin()`

Python 提供了内置函数 `bin()`,可以直接将整数转换为二进制字符串,并自动添加前缀 `'0b'`。

```python

示例

binary_num = 101010101 二进制数

binary_str = bin(binary_num) 转换为二进制字符串

print(binary_str) 输出: 0b101010101

去除前缀 '0b'

binary_str_clean = binary_str[2:]

print(binary_str_clean) 输出: 101010101

```

方法二:使用字符串拼接

通过字符串拼接的方式手动实现二进制转换,适用于需要自定义格式的场景。

```python

def binary_to_str(binary_num):

将整数转换为二进制字符串,去掉前缀 '0b'

binary_str = bin(binary_num)[2:]

补零至8位(可选)

n = 8 - len(binary_str)

if n >

0:

binary_str = '0' * n + binary_str

return binary_str

示例

binary_num = 101010101

binary_str = binary_to_str(binary_num)

print(binary_str) 输出: 01010101

转换为其他进制(如十六进制)

hex_str = hex(int(binary_str, 2))

print(hex_str) 输出: a5

```

补充说明

位数不足的情况:

上述方法默认补零至8位,若需要其他位数,可调整补零逻辑。例如,补零至16位可以使用 `str.zfill(16)` 方法:

```python

binary_str_padded = str(binary_num).zfill(16)

print(binary_str_padded) 输出: 00000000000000010101010101

```

负数处理:

`bin()` 函数对负数会返回带有负号的结果(如 `-0b1010`),需根据需求处理。

通过以上方法,可以灵活实现二进制到字符串的转换。