LINUX.ORG.RU

А нет ли какого ни будь способа, что бы применить формат к строке, использовав только часть аргументов?

Есть способ указывать стандартные значения для неиспользуемых аргументов.

def format(s, **kwargs):
    from collections import defaultdict
    from string import Formatter
    class DefKwargs(defaultdict):
        def __missing__(self, key):
            return '{' + key + '}'
    defkwargs = DefKwargs(**kwargs)
    formatter = Formatter()
    return formatter.vformat(s, [], defkwargs)

Ещё есть string.Formatter.parseю

anonymous
()
Ответ на: комментарий от noname_user

Не, не то. Мне как раз нужно сохранить в том же виде неиспользуемые скобки, и пропустить аргументы для которых скобок нет.

thunar ★★★★★
() автор топика
18 февраля 2020 г.

Вообщем, решил всё через шаблоны jinja2.

thunar ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.