如何在Python中找到对象的真实类型

时间:2016-03-04 11:27:34

标签: python pycharm

如何在Python中找到方法的实际返回类型?

例如,我想在Pycharm中启用类型提示,以便自动完成工作,但即使在调试器中,甚至在查看方法体后,也很难找到确切的对象类型。

我希望type(someObject)能够为对象返回有意义的内容,但对于大多数对象,它会返回<type 'instance'>,这几乎没用。

例如,如何查看调用urllib2.urlopen(url)返回的响应对象的类型是什么,以便我可以使用Pycharm type hint标记本地变量以使自动完成工作?

我意识到Python中的一切都是动态的,并且对接口的编程并不是一种广泛使用的Python范例,但至少我想知道我们在类型推断方面能走多远,特别是对于舒适的IDE支持和懒惰的&#39;使用自动完成进行编程。

1 个答案:

答案 0 :(得分:2)

旧样式类的实例的实际类型是instance,无论它是否有用。如果你想知道它是一个实例,你可以使用obj.__class__。但旧式的类不是类型。

并且没有类似&#34;返回类型的方法&#34;在python中。