If she'd punched her aggressor, people would instead be complaining about how she overreacted, and how their first impressions are that she's very hostile and aggressive, and she should just have said no again more firmly (I can remember this happening before). Female rape and sexual assault victims basically can't win no matter what they do.