【发布时间】:2012-10-20 18:30:15
【问题描述】:
我想在 python 中构建一个小型格式化程序,将数字返回给我 嵌入在十六进制字符串行中的值。
它是我的格式化程序的核心部分,应该可以合理快速地 格式化超过 100 行/秒(每行约 100 个字符)。
下面的代码应该给出一个我目前被阻止的例子。
'data_string_in_orig' 显示给定的输入格式。它一定要是 为每个字交换字节。从 'data_string_in_orig' 到 需要“data_string_in_swapped”。最后我需要结构 如图所示访问。预期结果在评论中。
提前致谢 沃尔夫冈R
#!/usr/bin/python
import binascii
import struct
## 'uint32 double'
data_string_in_orig = 'b62e000052e366667a66408d'
data_string_in_swapped = '2eb60000e3526666667a8d40'
print data_string_in_orig
packed_data = binascii.unhexlify(data_string_in_swapped)
s = struct.Struct('<Id')
unpacked_data = s.unpack_from(packed_data, 0)
print 'Unpacked Values:', unpacked_data
## Unpacked Values: (46638, 943.29999999943209)
exit(0)
【问题讨论】:
标签: python string hex swap python-2.x