当前位置: 首页 > 面试题库 >

SimpleJSON和NumPy数组

傅阳
2023-03-14
问题内容

使用simplejson序列化numpy数组的最有效方法是什么?


问题答案:

我将使用它simplejson.dumps(somearray.tolist())作为最 方便的
方法(如果我仍在使用simplejson,这意味着被Python 2.5或更早版本所卡住;
2.6和更高版本具有一个标准库模块json,它们的工作方式相同,所以我当然会使用它如果使用的Python版本支持它;-)。

为了寻求更高的效率,您 可以将
json.JSONEncoder
子类化(在中json;我不知道旧版本是否simplejson已经提供了这种自定义可能性),并且在该default方法中,可以numpy.array通过将它们变成列表或元组的特殊情况“及时”。但是,我有点怀疑您是否会通过这种方法在性能方面获得足够的利益来证明这种努力是合理的。



 类似资料:
  • 这是 Python 解析 JSON 的程序库。它具有简单、快速、完整、正确和易于扩展的特点,支持Python 2.5+和Python 3.3+。为了加速处理速度,它包括一个可选的C扩展。 示例 >>> import simplejson as json>>> json.dumps(['foo', {'bar': ('baz', None, 1.0, 2)}])'["foo", {"bar": ["

  • 问题内容: 我有Django版本1.7和Python版本2.7.5-我使用pip install simplejson和apt-get install python-simplejson命令来解决此问题,但仍然显示此异常。Django和Python之间是否存在任何兼容性问题,或者解决该异常的解决方案是什么: 问题答案: 您的代码与您使用的Django版本不兼容。 Django以前附带,但在Djan

  • 问题内容: 假设我有一个numpy数组,例如:[1,2,3,4,5,6]和另一个数组:[0,0,1,2,2,1]我想按组对第一个数组中的项求和(第二个数组)并按组号顺序获得n个组的结果(在这种情况下,结果将为[3,9,9])。我该如何在numpy中执行此操作? 问题答案: 有多种方法可以做到这一点,但这是一种方法: 您 可以对 事物 进行 矢量化处理,以便根本没有for循环,但是我建议不要这样做。

  • 问题内容: 我在创建numpy数组的numpy数组时遇到问题。我将在一个循环中创建它: 所需结果: 实际结果: 可能吗?我不知道数组的最终尺寸,因此无法使用固定尺寸对其进行初始化。 问题答案: 永远不要在循环中追加数组:与基本的Python相比,这是NumPy非常不擅长的一项操作。这是因为您要对每个数据进行完整复制,这将花费您二次时间。 相反,只需将您的数组附加到Python列表中,并在最后进行转

  • ndarray 对象预留了一些方法供我们调用,通过这些方法,我们可以查探到数组的一些基本信息,例如 dtype 可以查看数组的数据类型。本小节将介绍其他常用的方法,比如数组的大小、维数(秩)、元素的数据类型、每个元素的大小等等。 1. 数组的维数 1.1 ndim 数组的维数,即数组的秩,用来表征数组轴的数量或维度的数量。对于行向量: arr_1 = np.array([1,2,3]) arr_1

  • 我有一个疑问。有没有一种有效的方法来求一个numpy矩阵的所有邻域的和而不使用几个条件? 这是一个例子: 当我运行时,它返回我3,而不是一个错误,因此如果我想将1添加到一个值的所有邻居中,我需要使用很多条件,因为我不能只使用,因为在这种情况下以及在其他情况下,它只返回我一个“假邻居”