Python中isinstance()的否定形式

时间:2012-07-31 20:41:50

标签: python negate negation isinstance

我如何使用Python的负面形式isinstance()?

通常否定会像

那样起作用
x != 1

if x not in y

if not a

我只是没有看到isinstance()的例子,所以我想知道是否有正确的方法来使用isinstance()的否定。

3 个答案:

答案 0 :(得分:20)

只需使用not即可。 isinstance只会返回bool,您可以not与其他任何人一样。

答案 1 :(得分:8)

这看起来很奇怪,但是:

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

isinstance函数返回一个布尔值。这意味着您可以否定它(或进行任何其他逻辑操作,如orand)。

示例:

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

答案 2 :(得分:4)

只需使用not,例如,

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

你只是在否定isinstance正在返回的“真值”(即布尔值)。