繁体   English   中英

字符串到二进制位的转换

[英]String to Binary Bits Conversion

例如,如何转换字符串,

“超越无限!”

到二进制数字流? 我想在Python中实现DES加密。 但是这种加密需要64位的纯文本大小。 尽管位长,但实际上如何将其转换为位流进行加密?

同样,到位的转换应该使得后加密,解密也可以有效地进行(甚至对字符串中的“”进行位转换)。

我想知道一般如何做到这一点。

'{0:b}'。format(“”)不起作用。

那我该怎么办呢?

这是我能想到的最pythonic的方式:

>>> string = "hello"
>>> [bin(i) for i in bytearray(string, 'utf8')]
['0b1101000', '0b1100101', '0b1101100', '0b1101100', '0b1101111']

python 2.7

您可以这样做:

s = "To Infinity and Beyond!"  # s for string
s = ' '.join(format(ord(x.decode('utf-8')), 'b') for x in s)
print str(s)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM