I'd recommend getting an Oyster Card.
You can order one in advance and have it sent abroad as well. It does take 5 to 8 work days for EU countries, and up to 12 for others. Note that only a few countries are supported -- mostly Schengen area, US, and select Asian countries. The card activation fee is 3 GBP, and you are also required to put in at least 10 GBP credit initially which you can later use.
This is by far the most flexible way to travel in London, especially since you'll be staying for more than a day or two. Check the website for conditions and fares.
The best feature is that you don't have to plan ahead your journeys for the day to get the cheapest daily fare overall (there is a ridiculous number of tickets you can purchase, depending on the number of zones you travel through, the time of the day, the phase of the moon etc.). In the end of the day, you will always be charged the least possible amount for all the journeys you made.
As far as travel passes go, there are a few which allow for unlimited journeys during a single day in one or more than one zones, and usually break even at around 5 trips.
You can recharge it online with a credit card, or at every tube station with cash/card. If this is your first visit, I'd say go for it.
Note that the price for individual fares is exactly the same if you purchase them directly, so if you are able to plan well, you might not need it at all.