如何在 python 中使用 msgpack 打包数组?
Posted
技术标签:
【中文标题】如何在 python 中使用 msgpack 打包数组?【英文标题】:How to pack arrays iwht msgpack on python? 【发布时间】:2018-08-13 14:08:03 【问题描述】:我有一个dict
的数组,如下所示:
gen = 0: [array([0])], 1: [array([1]), array([-1])]
我想用msgpack
保存它们:
import msgpack
with open('data.msgpack', 'wb') as file:
msgpack.pack(gen, file)
但它返回错误:
TypeError: 无法序列化数组([0])
有什么问题?
【问题讨论】:
【参考方案1】:我没有评论的声誉,但是您不需要使用'array'初始化数组,只需使用[]就足够了。
话说,你可以看到一个用户here发布的类似代码
【讨论】:
我实际上需要保存一个第一个条目为 0 的数组。另外,我正在做与您链接到的代码相同的事情,但我没有字符串列表,而是一个列表数组 只需使用 gen = 0: [ [0] ], 1: [ [1], [-1] ] 是的,但我需要它们是数组 我不能用 msgpack 保存数组吗?以上是关于如何在 python 中使用 msgpack 打包数组?的主要内容,如果未能解决你的问题,请参考以下文章
rpc框架yar之源码解析- 打包(json, msgpack, serialize)
msgpack可以提供更好的性能和相同的python的struct.pack()功能吗?