python numpy矩陣切片和字串切片
阿新 • • 發佈:2019-01-28
建立4個6*6的矩陣,分別是矩陣值全為0,矩陣值全為1,矩陣值全為指定值,矩陣值隨機;
import numpy as np x1 = np.zeros((6,6)) x2 = np.ones((6,6)) x3 = np.full((6,6),255)#可以將255換成別的數字 x4 = np.random.rand(6,6) print(x1) print(x2) print(x3) print(x4)
執行結果:
讀取矩陣x4第二和第三行的第一個和第四個數字:
x4 = np.random.rand(6,6)
print(x4[2:4,1:5])
- 讀取矩陣x4所有行第一個和第四個數字:
x4 = np.random.rand(6,6)
print(x4[:,1:5])
- 讀取矩陣x4所有列的第0個和第3個數字
x4 = np.random.rand(6,6)
print(x4[0:4,:]) #包括下標為0的數字,不包括下標為4的數字
- 列印矩陣x4從後往前列印
x5 = np.array([(1,2,3),(5,6,8)])
print(x5)
print(x5[::,::-1]) #-1表示步長,也可以設定別的數字
print(x5[::-1])
- 設定步長為2
x5 = np.array([(1,2,3),(5,6,8)])
print(x5[::,::2 ]) #步長為2
- 只取下標為2的那一列
x5 = np.array([(1,2,3),(5,6,8)])
print(x5)
print(x5[:,2]) #逗號前一個冒號表示所有行
補充:
字串切片和矩陣切片很類似:
s = 'abcdefgh'
print(s)
print(s[::-1]) #-1表示步長
print(s[::2])
print(s[0:5])#下標為0的計算入內,下標為5的不計算入內
輸出結果:
abcdefgh
hgfedcba
aceg
abcde