Police received several calls Saturday evening from people who said a man armed with a sword was attacking taxis, The Local.se reported.
Police were dispatched to the scene shortly after 11 p.m.
"They met a male person around 25 years old who appeared psychologically unstable. He waved a sword towards the taxi vehicles and the public. He then attacked the police unit," Mikael Ericsson at Stockholm police told the Aftonbladet daily newspaper. "They were forced to open fire and shot him in the arm."
The man, whose name was not reported, was shot in the arm then rushed to a hospital where he was under police guard.
Pregnant Mila Kunis wins 'Best Villain' at MTV Movie Awards
Pistorius testifies he didn't consciously pull trigger when he shot girlfriend