NumPy 配列があります。それを と呼びましょうA
。次のコードの動作は明確ではありません。
b = A[3,:];
A[3,:] = 0;
3行目は に保存しなければならないのですがb
、なんとこれb
もゼロに!
ヘルプはありますか?
コピーを作成するには、実際にはcopy
!を作成する必要があります。
b = A[3,:].copy()
(ちなみに、python は C ではありません。ステートメントの後にセミコロンは必要ありません。)
MATLAB/Octave からの移行ですね :-)?
1) MATLAB の 1 ベースの配列とは対照的に、Python は 0 ベースの配列を使用することに注意してください。 A[3,:]
実際には4行目を表示します。
2) MATLAB とは異なり、このように配列からスライスを取得すると、スライスのメモリ位置がスライスからスライサーに格納されます。したがって、Andrew J. が言うように、コピーする必要があります。
「3行目はbに保存する必要がある」というステートメントに基づいて、コードは次のようになります
b = A[2,:].copy()