簡體   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