numpy:多维数组运算
ndarray
生成数组
1 import numpy as np 2 3 #使用普通一维数组生成NumPy一维数组 4 data=[6,7.5,8,0,1] 5 arr=np.array((data)) #[6. 7.5 8. 0. 1. ] 6 print(arr) 7 print(arr.dtype) #float64 8 print('') 9 10 #二维 11 data=[[1,2,3,4],[5,6,7,8]] 12 arr=np.array(data) 13 print(arr) 14 print(arr.shape) #维度(2, 4) 15 print('') 16 17 #使用zeros/empty 18 print(np.zeros(10))#生成包含10个0的一维数组 19 print(np.zeros((3,6))) #3*6的二维数组 20 print(np.empty((2,3,2))) #生成2*3*2的三围数组,所有元素未初始化 21 print('') 22 23 #使用arrange生成连续元素 24 print(np.arange(15)) #[0,1,2,..14]
切片
1 import numpy as np 2 3 #访问二维数组某一行或某一个元素 4 arr=np.array([[1,2,3],[4,5,6],[7,8,9]]) 5 print(arr[2])#[7 8 9] 6 print(arr[0][2])#3 7 print(arr[0,2]) #3 8 print('') 9 10 #对更高维数组的访问和操作 11 arr=np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]]) 12 print(arr[0]) 13 print('') 14 print(arr[1, 0]) 15 print('') 16 old_values=arr[0].copy() 17 arr[0]=42 18 ''' 19 [[[42 42 42] 20 [42 42 42]] 21 22 [[ 7 8 9] 23 [10 11 12]]] 24 ''' 25 print(arr) 26 arr[0]=old_values #把原来的数组写回去 27 print(arr) 28 print('') 29 30 #使用切片访问和操作数组:[) 31 arr=np.array([1,2,3,4,5,6,7,8,9,10]) 32 print(arr[1:6]) #[2 3 4 5 6]这里是引用 33 arr=np.array([[1,2,3],[4,5,6],[7,8,9]]) 34 print(arr[:2])#打印1,2行 35 print(arr[:2,1:])#1,2行,2,3列 36 print(arr[:,:1])#第1列所有元素 37 arr[:2,1:]=0#1,2行,2,3列元素设置为0 38 print(arr)

浙公网安备 33010602011771号