2016-10-11 4 views
0

島の島>島>測地点を表すnp.arraysのリストのリストがあります。np.arraysの比較のためのValueError

私が使用しようとしている

if not groups: 
    createNewGroup(point) 
else: 
    for group in groups: 
     if point in group: 
      continue 
    else: 
     createNewGroup(point) 

最初の島が正しく作成されているが、私はこのエラーを取得しています第2の島のために:

File "A2.py", line 371, in findIslands 
if point in group: 
ValueError: The truth value of an array with more than 
one element is ambiguous. Use a.any() or a.all() 

私はこのエラーを調査してきましたこれが私の状況にどのように当てはまるかを理解しようとしており、.any().all()pointを適用しようとしましたが、私は関係なく同じエラーが発生しています。

私は、現在の測地点が既に島のリストのリストに入っているかどうかを確認しようとしています。ポイントは多次元的なもので、私はそれが問題の原因だと思う。

+2

データ構造の詳細な例を表示できますか? – Acepcs

答えて

0

このエラーは、ifステートメントなどのスカラーコンテキストでブール値配列が使用されている場合に発生します。または表現の一部にinの部分があるかもしれません。

pointはアレイ、groupはアレイのリストですか?

一般的には、inは、配列を操作するときには適していません。

pointgrouppoint in groupまたは、少なくともそのタイプ、形状、dタイプ。

pointの小規模なリストを作り、in試験またはこれに相当する試験に合格することに専念してください。誰かが他と等しいかどうかはどうやって伝えますか? point1 == point2

関連する問題