10. Mark McGwire (583 homeruns)
Mark David McGwire played in St. Louis Cardinals and Oakland Athletics. He averaged one homerun for every 10.61 bats, the best bats-per-homerun ratio of all time, beating Babe Ruth with 11.76. His successful career was tainted by allegations of doping and he ended it with 583 homeruns. McGwire is now the coach of St. Louis Cardinals.