Python 编程指南 | 将字符串转换为二进制
在编程开发工作中,数据格式转换是常见操作之一。其中,将字符串转换为二进制形式的转换也经常出现。本文将探讨实现这一转换的几种方法。
方法一:使用 join()
+ ord()
+ format()
上述函数的结合可以用来完成这个特定任务。ord()
函数将字符转换为 ASCII 码对应的整数,format()
函数将整数转换为二进制数,join()
函数用于将每个转换得到的字符连接起来,形成一个字符串。
1 | #!/usr/bin/env python3 |
输出:
1 | 原始字符串:JOHNSON LIN |
方法二:使用 join()
+ bytearray()
+ format()
这个方法与上述方法大致相似。不同之处在于,不是使用 ord()
函数将每个字符转换为 ASCII 码,而是使用 binarray()
函数一次性将整个字符串转换为二进制。
1 | #!/usr/bin/env python3 |
输出:
1 | 原始字符串:JOHNSON LIN |
方法三:使用 join()
+ bin()
+ zfill()
我们定义了一个函数 str_to_binary(string)
,它接受一个字符串作为输入。
在函数内部,我们创建一个名为 binary_list
的空列表,用于存储输入字符串中的每个字符的二进制形式。
然后使用 for
循环遍历输入字符串的每个字符。对于每个字符,我们使用 ord()
函数将其转换为 ASCII 码对应的整数,然后使用 bin()
函数将该整数转换为二进制字符串。bin()
函数返回一个带有 '0b'
前缀的字符串,所以我们使用列表切片的方式删除这个前缀。
之后,我们使用 zfill(8)
方法用前导零在二进制形式左侧填充,直到长度达到 8。zfill()
方法用指定的字符(本例中为 '0'
)填充字符串左侧,直到达到所需长度。
接着,我们将二进制形式追加到 binary_list
中。之后,我们将列表中的所有二进制值连接起来,使用 join()
方法以单个字符串形式返回。
最后,我们以 “JOHNSON LIN “字符串为例测试该函数。该函数返回输入字符串的二进制字符串表示。
1 | #!/usr/bin/env python3 |
输出:
1 | 原始字符串:JOHNSON LIN |
方法四:使用 binascii
模块
示例代码:
1 | #!/usr/bin/env python3 |
输出:
1 | 原始字符串:JOHNSON LIN |
(END)
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.