对于infosec项目,我使用字符串作为一种字节数组。这通常在漏洞测试中完成。在构建字节数组时,我想连接可打印字符和不可打印字符。
这不是转换的问题,我真的很想转换类型。我可以在chr()周围编写函数或方法,但是必须有更好的方法。
>>> print "A"*10 + chr(0x20) + "B"*10 AAAAAAAAAA BBBBBBBBBB 例如,如果我要插入一个大的二进制数组怎么办? >>> print "A"*10 + 0xBEEF + "B"*10 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: cannot concatenate 'str' and 'int' objects >>> print "A"*10 + 0xBEEFBEEFBEEFBEEFBEEFBEEF + "B"*10 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: cannot concatenate 'str' and 'long' objects
我在这里可能使用了错误的数据类型,因为我非常确定自己甚至不能保证字符串具有8位字节。
我希望得到的一个例子:
>>> print "A"*10 + 0xBEEFBEEFBEEFBEEFBEEFBEEF + "B"*10 AAAAAAAAAA������������BBBBBBBBBB