我需要一种方法来获取python中字符串的二进制表示.例如
st = "hello world"
toBinary(st)
Run Code Online (Sandbox Code Playgroud)
有一个简洁的方法来做这个吗?
使用此代码获取字符串并将其转换为二进制:
bin(reduce(lambda x, y: 256*x+y, (ord(c) for c in 'hello'), 0))
Run Code Online (Sandbox Code Playgroud)
这个输出:
0b110100001100101011011000110110001101111
Run Code Online (Sandbox Code Playgroud)
哪个,如果我把它放到这个网站(在右边的网站上),我得到了我的hello回信息.我想知道它使用什么方法.我知道我可以将二进制字符串拼接成8位,然后将其与相应的值bin(ord(character))或其他方式匹配.真的在寻找更简单的东西.
我正在尝试编写一个脚本,它将从可执行二进制文件中提取字符串并将其保存在文件中.将此文件换行换行不是一种选择,因为字符串本身可能有换行符.但是,这也意味着使用unix"strings"实用程序不是一个选项,因为它只打印出所有新行分隔的字符串,这意味着只能通过查看输出来判断哪些字符串包含换行符. "弦".因此,我希望找到一个python函数或库,它实现了"strings"的相同功能,但它会将这些字符串作为变量,这样我就可以避免换行问题.
谢谢!