Generando una excepción al actualizar un atributo 'constante' en python

Como Python no tiene un concepto de constantes, ¿sería posible generar una excepción si se actualiza un atributo 'constante'? ¿Cómo?

class MyClass():
    CLASS_CONSTANT = 'This is a constant'
    var = 'This is a not a constant, can be updated'

#this should raise an exception    
MyClass.CLASS_CONSTANT = 'No, this cannot be updated, will raise an exception'

#this should not raise an exception    
MyClass.var = 'updating this is fine'

#this also should raise an exception    
MyClass().CLASS_CONSTANT = 'No, this cannot be updated, will raise an exception'

#this should not raise an exception    
MyClass().var = 'updating this is fine'

Cualquier intento de cambiar CLASS_CONSTANT como un atributo de clase o como un atributo de instancia debe generar una excepción.

Cambiar var como un atributo de clase o como un atributo de instancia no debería generar una excepción.

Respuestas a la pregunta(5)

Su respuesta a la pregunta