如何检查 numpy 数组是否为空?

新手上路,请多包涵

如何检查 numpy 数组是否为空?

我使用了以下代码,但如果数组包含零,则此代码失败。

 if not self.Definition.all():

这是解决方案吗?

 if self.Definition == array([]):

原文由 Kicsi Mano 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.1k
2 个回答

您可以随时查看 .size 属性。它被 定义为一个整数,当数组中没有元素时为零( 0 ):

 import numpy as np
a = np.array([])

if a.size == 0:
    # Do something when `a` is empty

原文由 JoshAdel 发布,翻译遵循 CC BY-SA 4.0 许可协议

https://numpy.org/devdocs/user/quickstart.html (2020.04.08)

NumPy 的主要对象是齐次多维数组。它是一个元素表(通常是数字),所有元素类型相同,由非负整数元组索引。在 NumPy 中维度被称为轴。 (…) NumPy 的数组类称为 ndarray。 (…) ndarray 对象的更重要的属性是:

ndarray.ndim

数组的轴数(维度)。

ndarray.形状

数组的维度。这是一个整数元组,指示数组在每个维度中的大小。对于具有 n 行和 m 列的矩阵,形状将为 (n,m)。因此,形状元组的长度是轴数 ndim。

ndarray.size 数组的元素总数。这等于形状元素的乘积。

原文由 Colonel Panic 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏