为什么isclass函数的值为false?

2024-09-29 01:19:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用以下代码来确定输入参数是类还是变量:

class Trajectory():
  ...

print inspect.isclass( Trajectory() )

轨迹是一个类,但当我调用这个函数时,我收到的是false。为什么?在

根据文件证明这是真的

^{pr2}$

Tags: 文件函数代码证明false参数轨迹class
3条回答

我想您正在寻找isinstance函数。在

class Test(object): pass

a = Test()
b = 1234

assert isinstance(a, Test)
assert not isinstance(b, Test)

因为你正在实例化轨迹并得到一个对象实例。注意:

In [1]: import inspect
In [2]: class Trajectory():
   ...:     pass
   ...: 
In [3]: print inspect.isclass(Trajectory())
False
In [4]: print inspect.isclass(Trajectory)
True

因为Trajectory()是一个类实例&Trajectory是一个类。在

print inspect.isclass(Trajectory)

将打印True。在

相关问题 更多 >