youYou have one level of quote too much. If your variable is already a string, no need to add extra "" to tell that it is a string. You should thinkThink of what you want to write if you run a selection in ArcMap. In this case:
Att=Att = 'Red'
while your where_clause gives:
"Att = 'Red'"
In youyour case, you should use this where clause:
where_clause = "Att = '{}'".format(val)
or
where_clause = "Att = '"+'" val++ val + "'"