1.3.1.3基础数据类型

你可能已经发现,在一些情况下,数组元素显示带有点(即 2. VS 2)。这是因为所使用的数据类型不同:

In [12]:

  1. a = np.array([1, 2, 3])
  2. a.dtype

Out[12]:

  1. dtype('int64')

In [13]:

  1. b = np.array([1., 2., 3.])
  2. b

Out[13]:

  1. array([ 1., 2., 3.])

不同的数据类型可以更紧凑的在内存中存储数据,但是大多数时候我们都只是操作浮点数据。注意,在上面的例子中,Numpy自动从输入中识别了数据类型。

你可以明确的指定想要的类型:

In [1]:

  1. c = np.array([1, 2, 3], dtype=float)
  2. c.dtype

Out[1]:

  1. dtype('float64')

默认数据类型是浮点:

In [2]:

  1. a = np.ones((3, 3))
  2. a.dtype

Out[2]:

  1. dtype('float64')

其他类型:

复数

In [4]:

  1. d = np.array([1+2j, 3+4j, 5+6*1j])
  2. d.dtype

Out[4]:

  1. dtype('complex128')

布尔

In [5]:

  1. e = np.array([True, False, False, True])
  2. e.dtype

Out[5]:

  1. dtype('bool')

字符

In [6]:

  1. f = np.array(['Bonjour', 'Hello', 'Hallo',])
  2. f.dtype # <--- 包含最多7个字母的字符

Out[6]:

  1. dtype('S7')

更多

  • int32
  • int64
  • unit32
  • unit64