📜  Python|将字符串转换为二进制

📅  最后修改于: 2022-05-13 01:54:23.491000             🧑  作者: Mango

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