tl;dr embedding variables in your string is easier and more readable with f-strings.
Example using string.format()
"{} minutes | ({}) Move {} assembly from {} to {}".format(travelTime, self.name, self.assyType, self.locationName, nextLocationName)
Same example with f-string
f"{travelTime} minutes | ({self.name}) Move {self.assyType} assembly from {self.locationName} to {nextLocationName}"
There are many wonderful writeups, e.g. Google's first search result: https://realpython.com/python-f-strings/
tl;dr embedding variables in your string is easier and more readable with f-strings.
Example using string.format()
"{} minutes | ({}) Move {} assembly from {} to {}".format(travelTime, self.name, self.assyType, self.locationName, nextLocationName)
Same example with f-string
f"{travelTime} minutes | ({self.name}) Move {self.assyType} assembly from {self.locationName} to {nextLocationName}"