Skip to main content
 首页 » 编程设计

python之反转字符串但将字符对放在一起

2025年05月04日21xiaohuochai

我分析了一个PCAP文件的全局头,发现魔数(Magic Number)是:d4 c3 b2 a1

这意味着它使用了小端字节序,它后面的所有字节都需要以相反的顺序处理。全局头的其他部分如下:

major version =  02 00 
 
minor version =  04 00 
 
time zone =  00 00 00 00 
 
timestamp =  00 00 00 00 
 
snaplen =  ff ff 00 00 
 
linktype =  01 00 00 00 

但是鉴于正在使用小端,它应该是:

major version =  00 02 
 
minor version =  00 04 
 
time zone =  00 00 00 00 
 
timestamp =  00 00 00 00 
 
snaplen =  00 00 ff ff 
 
linktype =  00 00 00 01 

所以我需要一种方法来反转字符串,但仍保持以相同顺序由空格分隔的字符对。

所以代码 [::-1] 将不起作用,因为它将 02 00 转换为 00 20,而它需要是 00 02

我该怎么做?

请您参考如下方法:

您还需要执行几个步骤:

linktype = "00 00 00 01" 
rev_linktype = " ".join(reversed(linktype.split())) 

这个想法是首先将字符串分割成标记而不是字符,然后反转标记的顺序,然后将它们重新连接成一个长字符串。