我开发了一个对提供的输入进行操作的函数,如果它没有找到输入数据的类型作为unicode,则必须返回输入数据类型unicode。我可以通过将其硬编码为unicode来实现,但是将来如果我想要更改所需的数据类型,我不想相应地更改该字符串。因此,我将输入变量的数据类型保存在不同的文件中,如果不匹配,则返回该文件中所需的数据类型。但它会返回类似
的内容Required Data Type - <type 'unicode'>
而不是<type 'unicode'>
我希望它只返回unicode
。请建议。
答案 0 :(得分:7)
使用类型为__name__
的属性:
>>> s = unicode(1)
>>> type(s).__name__
'unicode'
答案 1 :(得分:1)
以下是替代方案,适用于用户定义的类:
s.__class__.__name__
示例:
class A :
pass
a = A()
type(a).__name__ # 'instance'
a.__class.__name # 'A'
s = u"string"
type(s).__name__ # 'unicode'
s.__class.__name # 'unicode'