Its working for me...however, I dont have your data. I am using the Continents feature class from here:C:\Program Files (x86)\ArcGIS\Desktop10.1\TemplateData\TemplateData.gdb\World\continentThe syntax for those IN queries can get complicated. Does it work if you use a simpler def query? For example:import arcpy.mapping as ma
mxd = ma.MapDocument('current')
l = ma.ListLayers(mxd)[0]
l.definitionQuery = '"shape_area" > 1500'
arcpy.RefreshActiveView()
l.symbology.valueField = 'CONTINENT'
l.symbology.addAllValues()
arcpy.RefreshActiveView()
And here it is with my IN def query...does it work if you dont build the query on the fly?mxd = ma.MapDocument('current')
l = ma.ListLayers(mxd)[0]
l.definitionQuery = '"CONTINENT" IN (' + "'Africa', 'Asia', 'Europe')"
arcpy.RefreshActiveView()
l.symbology.valueField = 'CONTINENT'
l.symbology.addAllValues()
arcpy.RefreshActiveView()
P.S. You dont need arcpy.RefreshTOC() at 10.1 anymore. Arcpy.RefreshActiveView() does it all.