我想知道如何使用 python 的反射功能将 python ‘type’ 对象转换为字符串。
例如,我想打印一个对象的类型
print "My type is " + type(someObject) # (which obviously doesn't work like this)
print type(someObject).__name__
如果这不适合您,请使用:
print some_instance.__class__.__name__
例子:
class A: pass print type(A()) # prints <type 'instance'> print A().__class__.__name__ # prints A
type()此外,使用新式类与旧式(即从 继承)时似乎存在差异object。对于新式类,type(someObject).__name__返回名称,对于旧式类,它返回instance.
type()
object
type(someObject).__name__
instance