python struct 解包成字典
struct.unpack 将数据解包到一个元组中。是否有等效的方法可以将数据存储到字典中?
在我的特定问题中,我正在处理固定宽度的二进制格式。我希望能够一口气解压并将值存储在字典中(目前我手动遍历列表并分配字典值)
struct.unpack will unpack data into a tuple. Is there an equivalent that will store data into a dict instead?
In my particular problem, I am dealing with a fixed-width binary format. I want to be able, in one fell swoop, to unpack and store the values in a dict (currently I manually walk through the list and assign dict values)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如果您使用的是 2.6 或更高版本,您可以使用namedtuple + struct.pack/unpack,如下所示:
If you're on 2.6 or newer you can use namedtuple + struct.pack/unpack like this:
你想要这样的东西吗?
Do you want something like this?
struct
文档显示了示例直接解包到namedtuple
中。您可以将其与namedtuple._asdict()
结合起来以获得一个膨胀的功能:如果重要的话,请注意在 Python 2.7 中
_asdict()
返回一个OrderedDict< /代码>...
The
struct
documentation shows an example of unpacking directly into anamedtuple
. You can combine this withnamedtuple._asdict()
to get your one swell foop:If it matters, note that in Python 2.7
_asdict()
returns anOrderedDict
...