This is a very clear nested list comprehension. I am not sure why this is less clear than putting it on several lines with a for loop. There is no guideline that excludes this behavior. Happy to change other code where the nested list comprehensions are unclear, this doesn't seem to be one of those cases to me. If other developers agree that this is inscrutable I will change it.