将文本转换为二进制python



我需要一些可以使用python将二进制转换为文本的东西。

new = ''.join(format(ord(i), '08b') for i in arg)

我有这个rn可以把文本转换成二进制,但我需要一种方法把它反过来。

def binaryToText(binary):
''' Translating binary to text python '''
# Split binary into an array of 8-bits
binaryArray = [binary[i:i+8] for i in range(0, len(binary), 8)]
return "".join(chr(int(binaryValue, 2)) for binaryValue in binaryArray)
def textToBinary(text):
''' Translating text to binary python '''
# Convert text to binary
binaryString = ""
for character in text:
# Get ASCII value of character
asciiValue = ord(character)
# Convert ASCII to binary
binaryValue = bin(asciiValue)
# Remove "0b" from binary
binaryValue = binaryValue[2:]
# Add padded zeros to make sure each binary value is 8-bits
while len(binaryValue) < 8:
binaryValue = f"0{binaryValue}"
# Add this binary value to the string of binary
binaryString += binaryValue
return binaryString

print(binaryToText("0100100001100101011011000110110001101111001000000101011101101111011100100110110001100100"))
print(textToBinary("Hello World"))

输出

Hello World
0100100001100101011011000110110001101111001000000101011101101111011100100110110001100100
stream="010000010100001001000011"
"".join(chr(int(stream[i:i+8], 2)) for i in  range(0, len(stream), 8))

最新更新