Python|将字符串转换为二进制
数据转换一直是广泛使用的实用程序,其中之一可以是将字符串转换为其二进制等价物。让我们讨论一些可以做到这一点的方法。
方法 #1:使用join() + ord() + format()
上述功能的组合可用于执行此特定任务。 ord函数将字符转换为等效的 ASCII 字符,format 将其转换为二进制数,而 join 用于连接每个转换后的字符以形成字符串。
# Python3 code to demonstrate working of
# Converting String to binary
# Using join() + ord() + format()
# initializing string
test_str = "GeeksforGeeks"
# printing original string
print("The original string is : " + str(test_str))
# using join() + ord() + format()
# Converting String to binary
res = ''.join(format(ord(i), '08b') for i in test_str)
# printing result
print("The string after binary conversion : " + str(res))
输出 :
The original string is : GeeksforGeeks
The string after binary conversion : 01000111011001010110010101101011011100110110011001101111011100100100011101100101011001010110101101110011
方法 #2:使用join() + bytearray() + format()
此方法与上述函数几乎相似。这里的不同之处在于,不是使用 ord函数将字符转换为 ASCII,而是通过 bytearray函数一次完成字符串的转换。
# Python3 code to demonstrate working of
# Converting String to binary
# Using join() + bytearray() + format()
# initializing string
test_str = "GeeksforGeeks"
# printing original string
print("The original string is : " + str(test_str))
# using join() + bytearray() + format()
# Converting String to binary
res = ''.join(format(i, '08b') for i in bytearray(test_str, encoding ='utf-8'))
# printing result
print("The string after binary conversion : " + str(res))
输出 :
The original string is : GeeksforGeeks
The string after binary conversion : 01000111011001010110010101101011011100110110011001101111011100100100011101100101011001010110101101110011