创建ntype = numpy.int128的numpy数组时出现问题

时间:2017-09-25 17:17:22

标签: python numpy

我想创建一个空数组,我期望值为random.randint(0, 2 ** 128)。值将以numpy数组写入。尝试使用numpy.int128创建空数组时:

X = numpy.empty(5, dtype=numpy.int128)
print X

我收到此错误:

Traceback (most recent call last):
  File "test.py", line 62, in <module>
    X = np.empty(5, dtype=np.int128)
AttributeError: 'module' object has no attribute 'int128'

这是否意味着numpy不支持这个值限制?

1 个答案:

答案 0 :(得分:1)

Numpy仅支持以下数据类型

Data type   Description
bool_   Boolean (True or False) stored as a byte
int_    Default integer type (same as C long; normally either int64 or int32)
intc    Identical to C int (normally int32 or int64)
intp    Integer used for indexing (same as C ssize_t; normally either int32 or int64)
int8    Byte (-128 to 127)
int16   Integer (-32768 to 32767)
int32   Integer (-2147483648 to 2147483647)
int64   Integer (-9223372036854775808 to 9223372036854775807)
uint8   Unsigned integer (0 to 255)
uint16  Unsigned integer (0 to 65535)
uint32  Unsigned integer (0 to 4294967295)
uint64  Unsigned integer (0 to 18446744073709551615)
float_  Shorthand for float64.
float16 Half precision float: sign bit, 5 bits exponent, 10 bits mantissa
float32 Single precision float: sign bit, 8 bits exponent, 23 bits mantissa
float64 Double precision float: sign bit, 11 bits exponent, 52 bits mantissa
complex_    Shorthand for complex128.
complex64   Complex number, represented by two 32-bit floats (real and imaginary components)
complex128  Complex number, represented by two 64-bit floats (real and imaginary components)

最重要的是:

  

除了intc平台依赖的C整数类型之外,   long,longlong及其无符号版本已定义。

https://docs.scipy.org/doc/numpy/user/basics.types.html