1

私はIDLを初めて使用します。

事実上、私がやりたいことは、現在のインデックス I が配列内にあるかどうかをチェックする if ステートメントを持つことです。

Python では、次のようになります。

if this_num in xartifact:
   print 'Is an x artifact'
elif this_num in yartifact:
   print 'Is a y artifact'
else:
   print 'Is neither'

IDL で if をネストできることはわかっています。

IF P1 THEN S1 ELSE $

IF P2 THEN S2 ELSE $

IF PN THEN SN ELSE SX

これを行うための演算子または正気な方法があるかどうかはわかりません。

乾杯

4

3 に答える 3

3

上記の例のようにcountパラメーターを使用します。WHERE

a = 2
b = [1, 2, 3, 5]
ind = where(a eq b, count)
print, count gt 0 ? 'a in b' : 'a not in b'
于 2013-06-07T20:56:21.107 に答える
0

@mgalloy が提供する回答は確実に機能しますが、手順全体を利用してコードを 1 行だけ使用する、より簡単な解決策があります。

a = 2
b = [1, 2, 3, 5]

if total(b eq a) eq 1 then print, 'Yes' else print, 'No'
于 2020-10-08T02:57:33.067 に答える