You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何获取文件内容为二进制文本?解决rb模式返回Bytes对象问题

文件转二进制文本的正确实现方式

你当前的代码读取到的是bytes对象,Python打印该对象时会以ASCII可打印字符的形式展示(带b前缀),这并不是你需要的纯二进制字符串(如0110100001100101...这类格式)。

要得到目标二进制文本,你可以将读取到的每个字节转换为8位的二进制字符串,再拼接起来,具体代码如下:

with open("myfile.txt", "rb") as fp:
    data = fp.read()
    # 将每个字节转为8位二进制字符串,拼接成完整的二进制文本
    binary_text = ''.join(format(byte, '08b') for byte in data)
    print(binary_text)

代码说明

  • format(byte, '08b'):把单个字节(范围0-255)转换为8位二进制字符串,08表示不足8位时自动在前面补0,确保每个字节对应完整的8位二进制。
  • ''.join(...):将所有字节的二进制字符串拼接成一个连续的长字符串,得到最终的二进制文本。

如果希望每个字节的二进制之间用空格分隔(提升可读性),可以修改拼接方式:

binary_text = ' '.join(format(byte, '08b') for byte in data)

内容的提问来源于stack exchange,提问作者user22155941

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 04:40:05