#!/usr/local/bin/python2 class M(type): def __new__(cls, clsname, bases, dict): if 'name' not in dict: dict['name'] = clsname[0].lower() + clsname[1:] return type.__new__(cls, clsname, bases, dict) class C(object): name = 1 __metaclass__ = M print C().name