#coding=utf-8
__author__ = 'andy'
import numpy as np
'''一维数组的切片'''
arr=np.arange(10)
print(arr)
#源数据上进行切片与数值修改,比较耗内存
print(arr[5])
print(arr[5:8])
arr_slice=arr[5:8]
arr_slice[1]=12345#对切片的第一个值进行重新赋值
print(arr)
#不在源数据上修改用copy
arr_copy=arr[5:8].copy()
arr_copy[1]=123
print(arr_copy)
'''二维数组的切片'''
arr2d=np.array([[1,2,3],[4,5,6],[7,8,9]])
print(arr2d[1])
print(arr2d[1][0],arr2d[1,0]) #arr2d[1][0],arr2d[1,0]意思一致
'''多维数组的切片'''
#2*2*3的数组arr3d
arr3d=np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]])
print(arr3d)
#arr3d[0]是一个2*3数组
print(arr3d[0])
#标量值和数组都可以被赋值
old_values=arr3d[0].copy()
arr3d[0]=42
print(arr3d)
arr3d[0]=old_values
print(arr3d)
print(arr3d[1,0])