You could use the dirty callback to know that the connected plug has changed, even though it hasn't evaluated yet. And then defer actually handling its new value until after evaluation.
from maya import cmds, OpenMaya, utils def handle_attr(attr): print '-- Attribute {0} Changed: {1}'.format(attr, cmds.getAttr(attr)) def cb(msg, plug, *args, **kwargs): print '-- Attribute {0} Dirty'.format(plug.name()) utils.executeDeferred(handle_attr, plug.name()) On Wed, Aug 5, 2020 at 9:40 PM Rémi Deletrain <remi.deletr...@gmail.com> wrote: > In fact I recive the value before attribute change. > > -- > You received this message because you are subscribed to the Google Groups > "Python Programming for Autodesk Maya" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to python_inside_maya+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/python_inside_maya/cbc3c517-a9a4-4877-a54a-e6f533fbd924o%40googlegroups.com > <https://groups.google.com/d/msgid/python_inside_maya/cbc3c517-a9a4-4877-a54a-e6f533fbd924o%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "Python Programming for Autodesk Maya" group. To unsubscribe from this group and stop receiving emails from it, send an email to python_inside_maya+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CAPGFgA3GXFUymBN0HomDPEKL9QJPmKJEZvrSEAkxbETsd8T3NA%40mail.gmail.com.