2016-06-23 14 views

答えて

2

タプルない配列である、あなたはタプルとして比較したい場合は、単に数字がif a != (1, 2, 3)、すなわち周りに括弧を置く:

In [1]: a=1,2,3 

In [2]: (a!=1,2,3) 
Out[2]: (True, 2, 3) # a != 1 -> True so creates the tuple (True, 2, 3) 

In [3]: (a==1,2,3) 
Out[3]: (False, 2, 3) # a==1 -> False so creates the tuple (False, 2, 3) 

あなたはif (True, 2, 3)if (False, 2, 3)をチェックしている、両方が非です-emptyタプル両方のifsがTrueと評価されるので、ifでタプルをチェックすることはFalseに評価される唯一の方法は、タプルが空の場合です。

In [9]: bool(tuple([])) 
Out[9]: False 

我々は構文を変更したら、それは今、何を期待し見ることができます。

In [22]: if a != (1, 2, 3): 
      print "i" 
    ....: if a == (1,2,3):  
    ....:  print("j") 
    ....:  
j 
1

あなたが行うとa=1,2,3 あなたタプル

>>> a=1,2,3 
>>> a 
(1, 2, 3) 

、あなたが を行うとなりa!=1,2,3a!=1はtrueと評価されます

>>> a!=1,2,3 
(True, 2, 3) 

同様に、

>>> a==1,2,3 
(False, 2, 3) 

と非空のタプルはそれがなぜあなたIFSの両方で、真とみなされbecuaseがTrueに評価されています。

注:これは私を助け真

+0

両方sugestionsと評価されますさえ(False,)。最終的なコードは、私は条件がNPとして蛇腹 – NeedHelp

+0

インポートイメージ インポートnumpyのであれば IM = Image.open(「IV。フィナーレ(プレスト)の.png」) 行、COL = IMを使用して、特定の画素摂餌を見つけるために書い範囲内のjに対する #print I: 印刷行、COL データ=のnp.zeros範囲(行)におけるiについて((行* COL、5)) 画素= im.load() を.size (col): #print j r、g、b = pixels [i、j] data [i * col + j ,:] = r、g、b、i、j #if np.all( r、g、b、i、j)==(127.000,127.000,255.000,34,275)):範囲(行)におけるI iについて #プリントJ – NeedHelp

+0

#プリント: #print範囲(COL)でjに対するI : np.all(データなら[iが、COL + jは*:] ==(127.000 (i = 1、...、255.000,255.000、i-1、j + 1)の場合、 は、 np.all(data [(i-1))]: の場合、np.all(data [i * col + j + 1、:] ==(255.000,255.000,255.000、i、j + 1)): * col + j、:] ==(255.000,255.000,255.000、i-1、j)): C0min = j – NeedHelp

関連する問題