首先,矩陣A、n1和n2需要作為NumPy數組讀入內存。例如:
將numpy作為np導入
A = np.array([
[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12]
])
n1 = np.array([
[1, 2],
[5, 6]
])
n2 = np.array([
[3, 4],
[7, 8]
])
接下來可以用NumPy的correlate2d()函數在二維上對n1或n2的矩陣A進行卷積,看結果是否非零。例如:
結果1 = NP . correlated 2d(A,n1)
result 2 = NP . correlated 2d(A,N2)ifnp . any(result 1):print(' n 1在A中有對應位置')else: print('n1在A中沒有對應位置')if np.any(result2): print('n2在A中有對應位置')else。
如果矩陣A包含n1或者n2,上面的程序會輸出“n1在A中有對應的位置”或者“n2在A中有對應的位置”。
在下面的程序中,我們使用NumPy的非零()函數來查找結果矩陣中非零值的位置並打印出來。
結果1 = NP . correlated 2d(A,n1)
result 2 = NP . correlated 2d(A,n2)
if NP . any(result 1):print(' n 1在A:') print(np .非零(result 1))
Else: print('n1在A中沒有對應的位置')
If np.any(result2): print('n2在A:') print(np .非零(result2))
Else: print('n2在a中沒有對應的位置')
運行上面的程序。如果A、n1和n2的值是上述值,將輸出以下內容:
N1在a:
(數組([0]),數組([0]))
N2在a中沒有相應的位置
這意味著n1在矩陣A的(0,0)位置中具有對應的位置,而n2在矩陣A中沒有對應的位置..
希望這些信息能幫助妳理解和實現算法。