2012-07-31 94 views
8

Pythonのisinstance()の否定型はどうすれば使用できますか?Pythonのisinstance()の否定形式

通常の否定はので、私は()でisinstanceとの否定を使用するための正しい方法があるかどうかを知りたいのですが、)私はちょうどでisinstance(との例を見ていない

x != 1 

if x not in y 

if not a 

ようなものを働くだろう。奇妙に思えるでしょう

+7

「isinstance(...)ではない」という意味ではありませんか? – jmetz

+2

だから、すべてのPythonの構築に 'not'を使う方法を学ぶ必要がありますか? – JBernardo

+2

レッスンを学んだ.. – mrl

答えて

18

だけnotを使用しています。 isinstanceboolを返します。notは他のどのようなものでもかまいません。

6

、しかし:

if not isinstance(...): 
    ... 

isinstance関数はブール値を返します。つまり、それを否定することができます(またはorまたはandのような他の論理演算を行うことができます)。

例:

>>> a="str" 
>>> isinstance(a, str) 
True 
>>> not isinstance(a, str) 
False 
3

ただ、例えば、

if not isinstance(someVariable, str): 
    .... 

あなたは単にisinstanceが戻っていることを "真理値"(すなわちブールを)否定され、notを使用しています。

関連する問題