如何检查是否有任何库昵称的NumPy数组?

qv7cva1a  于 2022-11-10  发布在  其他
关注(0)|答案(1)|浏览(155)

我正在为一个函数编写一个类型检查器,它需要检查参数是否为<class‘numpy.ndarray’>类型。但是,如果v是NumPy数组,检查type(v) == np.array是否最终取决于如何全局导入numpy
例如,如果只使用import numpy,则类型检查器无法运行,因为type(v) == np.array返回未定义的np错误。有没有办法绕过如何在导入NumPy的同时仍然检查某个东西是否属于NumPy类型?

envsm3lx

envsm3lx1#

type的输出转换为字符串,并检查是否为"<class 'numpy.ndarray'>"
这是可行的:

import numpy

v = numpy.array([1.])

print(str(type(v)) == "<class 'numpy.ndarray'>")

还有这件事:

import numpy as np

v = np.array([1.])

print(str(type(v)) == "<class 'numpy.ndarray'>")

相关问题