【问题标题】:Access string's binary in Python在 Python 中访问字符串的二进制文件
【发布时间】:2020-11-15 07:55:01
【问题描述】:

我在 Python 中以 UTF-8 编码字符串。我需要访问它的二进制文件,但是我不知道如何。下面的代码显示了这一点:

s = 'Hello'.encode('utf-8') #Enconding the UTF-8 string

print(s) #This outputs 'b"Hello"', however I need to access its binary

感谢您的宝贵时间

【问题讨论】:

  • 你能解释一下你想用字节做什么吗?
  • 您需要更明确地了解“访问”的含义。

标签: python string binary


【解决方案1】:

如果您需要二进制数,您可以在打印时使用b 格式说明符。此示例还需要用 0 填充,长度为 8 位:

>>> print(' '.join('{:08b}'.format(byte) for byte in s))
01001000 01100101 01101100 01101100 01101111

【讨论】:

  • 这是一个更长的例子:01000010 01101111 01101100 01101100 01101111 01100011 01101011 01110011 00100000 01110100 01101111 00100000 01000010 01110010 01100101 01111000 01101001 01110100
【解决方案2】:

s 是一个bytes 对象,你可以遍历对象中的字节:

s = 'Hello'.encode('utf-8')

for b in s:
    print(b)

结果:

72
101
108
108
111

注意打印的值是s中每个字节的整数值

【讨论】:

    猜你喜欢
    • 2015-07-02
    • 1970-01-01
    • 2014-01-19
    • 2012-09-05
    • 1970-01-01
    • 1970-01-01
    • 2017-03-26
    • 2013-11-26
    • 2021-11-09
    相关资源
    最近更新 更多