constants.py 495 B

12345678910111213141516
  1. # -*- coding: utf-8 -*-
  2. #!/usr/bin/env python
  3. class _Constant(object):
  4. class _ConstantError(TypeError):
  5. pass
  6. def __setattr__(self, name, value):
  7. if name in self.__dict__:
  8. raise self._ConstantError, "Can't rebind constant(%s)" % name
  9. self.__dict__[name] = value
  10. def __delattr__(self, name):
  11. if name in self.__dict__:
  12. raise self._ConstantError, "Can't unbind constant(%s)" % name
  13. raise NameError, name