class DifferentTypeName(type): pass
class bob:
__metaclass__ = DifferentTypeName
foo = bob
print "%s" % type(foo).__name__
испускает DifferentTypeName
, как вам требуется. Кажется маловероятным, что это действительно то, что вы хотите (или нуждаетесь), но, эй, это - это способ сделать именно то, что вы так явно просите для: изменить * 1007 класса * имя Назначение подходящего переименованного производного от type
до foo.__class__
или bob.__class__
позже также будет работать, так что вы можете заключить это в довольно специфическую функцию:
def changeClassTypeName(theclass, thename):
theclass.__class__ = type(thename, (type,), {})
changeClassTypeName(bob, 'whatEver')
foo = bob
print "%s" % type(foo).__name__
это излучает whatEver
.