在Scapy中,我取了几个包的前28个字节,并将每个字节保存为一个十六进制字符串。每当我想将这些字符串全部打印在一起(它们保存在列表中),就会发生以下情况:
>>> print myStrings[0]
['E\x00\x00W\x00\x00@\x00\x01\x11\xe7-\x8a`t\x86\xd5\x92\xbd\xef0\x1a\xa4\xe8\x00C\xe2k', ['E\x00\x00W\x00\x00@\x00\x01\x11\xe7-\x8a`t\x86\xd5\x92\xbd\xef0\x1a\xa4\xe8\x00C\xe2k']]
但是如果我想分别打印每个字符串:
^{pr2}$(MyStrings
是列表列表:[[string1, [string2,string3,...], ...]
)
这是怎么回事?在
当打印一个列表时,Python调用
list.__str__
,它对它的每个项调用repr
。在打印字符串时,Python直接输出字符串。在
字符串上的
repr
方法将不可打印字符转换为其十六进制表示形式。在相关问题 更多 >
编程相关推荐