首页 > 解决方案 > 字符串的二进制表示

问题描述

假设我在字符串中有一些 ASCII 字符,比方说s = ABC,我怎样才能将二进制表示形式检索为字符串?

在这种情况下,

A = '01000001'
B = '01000010'
C = '01000011'

所以我想要make_binary('ABC')返回的东西'010000010100001001000011'

我知道我可以获得字符串的十六进制值。我知道我可以得到一个整数的二进制表示。我不知道是否有任何方法可以将所有这些部分联系在一起。

标签: pythonencoding

解决方案


使用该ord()函数获取每个字符的整数编码。

def make_binary(s):
    return "".join([format(ord(c), '08b') for c in s])
print(make_binary("ABC"))

08b格式化返回格式化为带前导零的 8 位的数字。


推荐阅读