【发布时间】:2013-06-04 05:22:56
【问题描述】:
我有一个超过 256 位的大字符串,我需要将它的字节交换为 32 位。但字符串是十六进制的。当我查看 numpy 和 array 模块时,我找不到关于如何进行覆盖的正确语法。有人可以帮帮我吗?
一个例子:(认为数据要长得多。我可以使用pack,但是我必须先将小端转换为十进制,然后再转换为大端,这似乎很浪费):
Input:12345678abcdeafa
Output:78563412faeacdab
【问题讨论】:
-
可能有包,但你必须不那么模糊。
-
每个十六进制数字是 4 位,我想您可以将字符串切成半字大小的块并交换奇数/偶数块。
-
这看起来不像是字节序交换,除非你有 4 位字节。
-
...但是你所拥有的不会交换字节,除非你有 4 位字节。假设 8 位字节,交换
12345678得到78563412,而不是87654321。 -
输入/输出是十六进制数字的字符串还是十六进制文字或其他什么??
标签: python