numpy和list的区别;定义多维数组,取数组元素;numpy数值类型;数组切片;数组反转
>>> import numpy as np >>> a = list(range(10,15)) >>> a [10, 11, 12, 13, 14] >>> b = np.arange(5) >>> b array([0, 1, 2, 3, 4]) >>> b.shape (5,) >>> b.dtype dtype('int32') >>> #定义多维数组,取数组元素 >>> c = np.array([a,b]) >>> c array([[10, 11, 12, 13, 14], [ 0, 1, 2, 3, 4]]) >>> c.size 10 >>> e = np.array([c,c*2]) >>> e array([[[10, 11, 12, 13, 14], [ 0, 1, 2, 3, 4]], [[20, 22, 24, 26, 28], [ 0, 2, 4, 6, 8]]]) >>> d = [a,b] >>> d [[10, 11, 12, 13, 14], array([0, 1, 2, 3, 4])] >>> #numpy数值类型 >>> type(d) <class 'list'> >>> type(d[1]) <class 'numpy.ndarray'> >>> type(e) <class 'numpy.ndarray'> >>> e.dtype #查看e中的元素类型 dtype('int32') >>> e[1].dtype dtype('int32') >>> e.shape (2, 2, 5) >>> e[1] array([[20, 22, 24, 26, 28], [ 0, 2, 4, 6, 8]]) >>> e[1,0] array([20, 22, 24, 26, 28]) >>> e[1,0,3] 26 >>> b = np.arange(5,dtype=np.int64) >>> b array([0, 1, 2, 3, 4], dtype=int64) >>> #数据类型对象 >>> e.dtype.type <class 'numpy.int32'> >>> #所占字节数 >>> e.dtype.itemsize 4 >>> #字符码 >>> e.dtype.char 'l' >>> #数组切片 >>> b[2:5] array([2, 3, 4], dtype=int64) >>> e[0,0,2:5] array([12, 13, 14]) >>> e[0,0,0:5:2] array([10, 12, 14])
>>> #数组反转 >>> e[::-1] array([[[20, 22, 24, 26, 28], [ 0, 2, 4, 6, 8]], [[10, 11, 12, 13, 14], [ 0, 1, 2, 3, 4]]])