Допустим, мне нужно построить серию строк на основе этого шаблона:

pattern="{app: }"

С конечной целью генерации следующей последовательности:

"{приложение: MS Office}"

"{приложение: Блокнот}" и т. д.

Я пытаюсь сделать это с помощью метода форматирования, так

insert="MS Office"
result=pattern.format(insert)

Тем не менее, все, что я вернусь, это

KeyError: 'app'

Похоже, что ошибка вызвана тем, что Python неверно интерпретирует двоеточие в шаблоне, но как мне обойти это? Мне нужна толстая кишка.

Спасибо.

.

0
vanhemt 23 Окт 2018 в 16:08

2 ответа

Лучший ответ

Вам нужно избежать скобок:

In [1]: pattern = '{{app: {}}}'

In [2]: pattern.format('MS Office')
Out[2]: '{app: MS Office}'
1
awesoon 23 Окт 2018 в 13:10

Использование

pattern="{{app: {0} }}"

insert="MS Office"
result=pattern.format(insert)
print(result)

< Сильный > Вывод :

{app: MS Office }
1
Rakesh 23 Окт 2018 в 13:10
52949903