在python中将字符串文本转换为相同的二进制数据

2024-05-12 18:37:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从XML文件中读取一些值,比如这些值表示硬件寄存器的重置状态。<Field_Reset_Value>10</Field_Reset_Value>在这里表示两位,分别为“1”和“0”。我需要使用这些值来按位移位或与其他位值进一步移位

现在,当我读取该值时,它表示为一个字符串。有人能给我提个建议吗,我可以把字符串转换成二进制。如下面的例子所示

string = "10"

现在我想将其二进制值转换为binval = 0b10

此外,这些值可以是从1位到32位的任意位数。我的意思是字符串也可以是1101001110011,所以我需要将它表示为0b1101001110011


Tags: 文件字符串field硬件value状态二进制xml
1条回答
网友
1楼 · 发布于 2024-05-12 18:37:13

您可以使用以下代码:

>>> st = "hello world"
>>> ' '.join(format(ord(x), 'b') for x in st)
'1101000 1100101 1101100 1101100 1101111 100000 1110111 1101111 1110010 1101100 1100100'

#using `bytearray`
>>> ' '.join(format(x, 'b') for x in bytearray(st, 'utf-8'))
'1101000 1100101 1101100 1101100 1101111 100000 1110111 1101111 1110010 1101100 1100100'

相关问题 更多 >