1

そのため、2次元配列があるプロジェクトに取り組んでおり、1次元のインデックスを知らなくても、2次元に配置された要素の場所を見つける必要があります。

パーツを繰り返し処理して、値エラーではないかどうかを確認できることはわかっていlist[x].index(y)ますが、コードの見栄えが大幅に低下するため、2dのようなより良い方法があるかどうかを知りたいと思いました。 .indexメソッド?

4

3 に答える 3

1

車輪の再発明をしたくないと仮定すると、この質問にはあなたが探している答えがあると思います。配列内の何かの最初のインデックスを返すNumpy関数はありますか?

import numpy as np
a = np.array([[1,2,4],[4,5,6]])
item = 4
row_indices, col_indices = np.where(a == item)
于 2013-03-24T00:32:39.763 に答える
0

このようなことを試してください。

>>> l = [[1,2,3],[4,5],[6,7,8,9]]
>>> x = 1
>>> y = 2
>>> v = l[x][y] if len(l) > x and len(l[x]) > y else None
>>> v is None
True
于 2013-03-23T21:28:39.653 に答える
0

すべての行の長さが等しい場合は、次のコードを使用できます。

index_2d = [item for row in list for item in row].index(y)
index_row = index_2d / ROW_LENGTH
index_col = index_2d % ROW_LENGTH
于 2013-03-23T21:29:26.227 に答える