不要将其与反向任务混淆,这已经涵盖了很多内容。
我正在寻找类似np.dtype(7.7) == np.float
的东西。
其动机是能够像numpy本身一样处理任何类似数组的输入。为了构造输出或临时数据,如果可能的话,我有时希望使用输入类型
编辑:也许这是一个糟糕(太具体)的例子;我知道np.float
恰好是内置float
的别名。我在想以下几点
myInput = something
# required to have a homogeneous data type in the documentation of my function;
# maybe constrained to float, int, string, lists of same length and type
# but I would like to handle simply as much of that as numpy can handle
numInput = len(myInput)
numOutput = numInput // 2 # just for example
myOutput = np.empty(shape=(numOutput), dtype=???)
for i in range(numOutput):
myOutput[i] = whatever # maybe just a copy, hence the same data type
您可以简单地使用np.float64(原始\u float)或任何您希望将变量转换为的numpy类型
为了记录在案,此代码适用于:
希望这有帮助
编辑: 我刚刚看到@用户2357112支持Monica对您的问题的评论,需要注意的是,np.float的作用方式与float相同。我提供的实现面向特殊的numpy类型,如我在测试代码中使用的np.float32或np.float64。但如果我只使用np.float执行相同的测试,结果将是:
由此证明,从解释器的角度来看,float和np.float几乎是相同的类型
numpy.float
只是常规的Pythonfloat
类型。这不是一个简单的数据类型。这几乎肯定不是你需要的:如果希望dtype NumPy将标量强制为,只需创建一个数组并获取其dtype:
如果希望NumPy用于此数据类型的标量,请访问该数据类型的
type
属性:相关问题 更多 >
编程相关推荐