### Problem:

You have to points represented by some coordinate string in Python:

a = "N 48° 06.112' E 11° 44.113'" b = "N 48° 06.525' E 11° 44.251'"

and you want to compute both bearing and distance between them

### Solution:

This can be done using a combination of two of our previous posts:

- How to parse any lat/lon string in Python using GeoPy and
- How to compute distance and bearing between two lat/lon points in Python

from geographiclib.geodesic import Geodesic from geopy.geocoders import ArcGIS geolocator = ArcGIS() a = geolocator.geocode("N 48° 06.112' E 11° 44.113'") b = geolocator.geocode("N 48° 06.525' E 11° 44.251'") result = Geodesic.WGS84.Inverse(a.latitude, a.longitude, b.latitude, b.longitude) distance = result["s12"] # in [m] (meters) bearing = result["azi1"] # in [°] (degrees)

Result for our example:

distance = 784.3069649126435 # m bearing = 12.613924599757134 # °