I'm travelling to London in 2 weeks and I wanted to buy an Oyster card. The thing is, I'll only be in London for a week and then I'll be going to Leeds. Will it be useful to have my Oyster card? Or should I just get a pay as you go Oyster card and before I leave get a refund?
As far as I know Oyster card is only valid in London. They are trying to extend it to neighbouring towns (I think at some point you will be able to use it on train services to get to some of the airports), but definitely it doesn't work in Leeds.
Note that if you have a contactless credit/debit card, you can use this one instead. There are daily caps on all travel in London which are the same as a daily ticket, and I think at least at the beginning there was a weekly cap. More details: https://tfl.gov.uk/fares-and-payments/contactless
Yes, you can sometimes use an Oyster card outside London, but not very far from London. You can't use it in Leeds, nor in other distant cities like Birmingham or Southampton or Glasgow. But some places near London, like Amersham, Watford, Hertford, Shenfield or Redhill do allow Oyster to be used on some services. For complete details see this page, and in particular the link to maps at the bottom.
If you plan to travel around london a lot it will save you some pounds, my daughter and I both bought one last time we were there for two weeks, and just save it for next time you visit.