Использование локальных переменных ()и метода форматирования ()для строк :Есть ли предостережения?

Есть ли какие-либо недостатки, предостережения или предупреждения о плохой практике использования следующего шаблона?

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

У меня был очень повторяющийся код генерации строк, и я хотел использовать его, но что-то в использовании locals()вызывает у меня дискомфорт. Есть ли в этом опасность неожиданного поведения?

Редактировать :контекст

Я обнаружил, что постоянно пишу такие вещи, как:

"{name} {age} {userId} {etc}...".format(name=name, age=age, userId=userId, etc=etc)
47
задан Rafael S. Calsaverini 1 August 2012 в 18:07
поделиться