Verwendung der Methoden locals () und format () für Zeichenfolgen: Gibt es Vorbehalte?

Gibt es Nachteile, Vorbehalte oder Warnungen vor schlechten Praktiken bei der Verwendung des folgenden Musters?

def buildString(user, name = 'john', age=22):
    userId = user.getUserId()
    return "Name: {name}, age: {age}, userid:{userId}".format(**locals())

Ich hatte einen sich sehr wiederholenden Code zum Erzeugen von Strings zu schreiben und war versucht, diesen zu verwenden, aber etwas über die Verwendunglocals() macht mich unwohl. Besteht dabei die Gefahr eines unerwarteten Verhaltens?

Bearbeiten: Kontext

Ich habe ständig Dinge geschrieben wie:

"{name} {age} {userId} {etc}...".format(name=name, age=age, userId=userId, etc=etc)

Antworten auf die Frage(4)

Ihre Antwort auf die Frage