GPS uses ZERO power unless an app actively calls for fine location. If you see the GPS icon, its actively seeking out satitlites... then it will use power like nobody's business *
Battery Saving will use a lot less power than High Accuracy since it farms off your location to your network location, which is passively obtained based on either your Wi-Fi connection (fairly accurate) or the tower you are connected to (which could be quite a ways away). You GPS sits idle... There are quite a few applications that call for fine location (triggering your GPS if enabled) that don't need them. General weather apps, for instance, often hit your GPS and there is ZERO need for them unless you are using something like Arcus or Nooly, which try to give hyper-accurate estimates on when it will rain at your location. Other than that, and navigation/taffic apps, there are few reasons why an app should call for GPS-based locations...
I actually used automation apps (like Tasker or Llama) to keep the phone in Battery Saving mode until an app of my choosing (Waze, etc) goes active... that blocks the GPS-greedy apps from wasting power while allowing me to use fine location when I want to without me having to toggle.
* In case anyone wonders why GPS uses so much power... after all, it is just a receiver and doesn't transmit, right? Well, GPS is a very slow data channel and requires your phone to be 'awake' the entire time, but it is just listening for rather simple bits of data being transmitted from a series of satellites high in orbit. That doesn't, in an of itself, use a ton of power. It's what your phone DOES with that information that causes the drain. Your phone takes those timing signals (which are fancy timestamps) in and then uses some pretty hefty calculations to triangulate your position in three dimensional space, several times a second, all in real-time. The whole process is very processor intensive. Then on top of that, apps like Google Navigation use a far amount of power themselves.
In stark contrast... using network location is pretty much as follows....an app polls the location service on your phone, which pings Google on a regular basis to ask "I'm on this network, where am I?". The location service then spits out a set of coordinates. The difference in power consumption is significant.