Agree airports have bad exchange rates. They kill you with fees also. Don’t do it!
I would do it in-country. For some places, there is no other choice. When I went to Africa, they didn’t have any local currency in stock in my hometown, or in the two other major US airports I passed through before leaving the country. They had it available in London, and this is how I learned how bad exchanging currency in airports is – when I got to the country, I realized I had been totally taken at the airport.
It is good to arrive in the country with cab fare and hotel fee for one night in local currency, especially if you are arriving super late at night or if it is late-ish and a more rural area.
In a major metropolitan city, I wouldn’t even worry really. Like London, I bet you can get a cab driver to stop at an ATM in Stockholm, no problem, or just rely on a credit card for the first day or two until you are able to find one.
Also, debit cards don’t tend to work abroad unless you have the cashier run it as a credit card. And, people have told me that it is more economical to use cash withdrawn from ATMs than to use credit cards in terms of fees. I’ve also heard that Capital One is basically the only bank left in the U.S. that doesn’t charge the exchange fees. I don’t remember if it was true for my Africa trip, and I’m having a hard time evaluating it for my recent Canada trip because I didn’t save receipts. I wouldn’t get a CapOne card just for travel though, because everything else about them sucks!
I hope you have a great trip!