Firstly one way flights can actually be quite expensive, sometimes not that much less than a return !
Obviosuly it also depends what you define as 'expensive'.
It really varies day to day - Wed 21 Jul for example is £39, while Sun 18th is £128.
The loads on flights are also desceptive, flights can look empty but they may expect lots of last minute sales (say through travel agents or as part of a connecting flight) plus obviously EDI-LHR is heavily business travelers so they can be pricey !
1) Buy when the flight is least busy (off peak so mid week or later at night)
2) Make sure you select 'lowest fare' when booking online
3) If you can, be flexible with dates, as the example above shoes traveling a few days earlier / later can save you a few quid !
4) Remember Inter UK Flights are actually 'club' tickets and as such can be pricey (if you don't beleive me take a look at the Class on your ticket next time you fly EDI-LHR...not 'Y'..but 'C')
Always stand up for what is right, even if it means standing alone..