I love to purchase tourist passes in advance. With them you typically can use public transport and visit the most important sights without paying every single time. If you get around a lot in a city it can save you a lot of money and that is quite important at Oslo as it is one of the most expensive cities in Europe. How does it work at Oslo currently? You just need to download the ‘Oslo pass‘ app from your mobile app store and within you can buy passes for different time frames. Once you arrived at Oslo you just need to activate it. The app shows two different tickets: one for public transport, one for visiting sights.
Public transport includes metro, tramway of the Ruter network in zones 1 and 2. That is more than sufficient, you can reach even the rather remote Henie Onstad Kunstsenter and the Holmenkollen. It also includes the ferry boat from the harbor to the museum island Bygdøy; it is really all you need concerning public transport (except the airport highspeed train). The important sights of the city can be visited with the Oslo pass; there was not a single location I needed to pay extra: just take out your smartphone, present the QR code to the cash desk and an employee will scan it and print you a ticket.