如何在Python中找到方法的实际返回类型?
例如,我想在Pycharm中启用类型提示,以便自动完成工作,但即使在调试器中,甚至在查看方法体后,也很难找到确切的对象类型。
我希望type(someObject)
能够为对象返回有意义的内容,但对于大多数对象,它会返回<type 'instance'>
,这几乎没用。
例如,如何查看调用urllib2.urlopen(url)
返回的响应对象的类型是什么,以便我可以使用Pycharm type hint标记本地变量以使自动完成工作?
我意识到Python中的一切都是动态的,并且对接口的编程并不是一种广泛使用的Python范例,但至少我想知道我们在类型推断方面能走多远,特别是对于舒适的IDE支持和懒惰的&#39;使用自动完成进行编程。
答案 0 :(得分:2)
旧样式类的实例的实际类型是instance
,无论它是否有用。如果你想知道它是一个实例,你可以使用obj.__class__
。但旧式的类不是类型。
并且没有类似&#34;返回类型的方法&#34;在python中。