The dict in data[question] isn't being processed when this if statement fails, is that ok?  

Is it the case that the multiple answer instance should be processed the same as the single answer instance, only it's a list of dicts rather than a single dict? If so, why not process the single case with an inner function, and then apply the inner function in a loop in the multicase, so that you can ensure you're doing the same processing in each instance?   I worry that the code reproduction can lead to random mutation and subtle inconsistency bugs later. Also it would be shorter that way.