相关疑难解决方法(0)

python使用isinstance比较boolean和int

有人可以给我一个解释,为什么isinstance()在下列情况下返回True?编写代码时,我期待False.

print isinstance(True, (float, int))
True
Run Code Online (Sandbox Code Playgroud)

我的猜测是它的python的内部子类,如0和1 - wheter float或int - 在用作布尔值时都会计算,但不知道确切的原因.

什么是解决这种情况的最pythonic方式?我可以使用,type()但在大多数情况下,这被认为是较少pythonic.

python int comparison boolean isinstance

28
推荐指数
4
解决办法
1万
查看次数

标签 统计

boolean ×1

comparison ×1

int ×1

isinstance ×1

python ×1