有没有办法在numpy中禁用静默转换?在
import numpy as np
a = np.empty(10, int)
a[2] = 4 # OK
a[3] = 4.9 # Will silently convert to 4, but I would prefer a TypeError
a[4] = 4j # TypeError: can't convert complex to long
当分配任何非ndarray类型的值时,numpy.ndarray
对象是否可以配置为返回TypeError
?
如果不是,最好的选择是子类numpy.ndarray
(并重写__setattr__
或{
不幸的是,} )。在
numpy
没有在数组创建中提供此功能,您可以设置是否只有在转换数组时才允许强制转换(请查看文档中的^{您可以使用该特性或子类} 模块来创建类型化数组:
numpy.ndarray
,但也可以考虑使用python本身提供的^{只是个主意。在
相关问题 更多 >
编程相关推荐