Should you add a `__len__` method to `EarthLocation`?  (though it should really be in `CartesianPoints` if it isn't already).  Then you could use `len(self.location)`.