Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
 Аватар для rim41
1045 / 313 / 78
Регистрация: 16.03.2020
Сообщений: 954

Как заменять определенные части текста на соответствие этим частям из словаря?

29.12.2022, 10:25. Показов 642. Ответов 5

Студворк — интернет-сервис помощи студентам
Есть условный текст:
Hello, {string}, go {x} steps every day in {a} o'clock.

Хочу заменить всё указанное в {} на соответствие из словаря
Python
1
2
3
4
5
dct = {
    'x': '11',
    'a': '15',
    'string': 'abc'
}
С составлением шаблона практически не возникло проблем, а вот придумать как заменять текст не могу. Пытался так:
Python
1
2
3
4
def foo(data):
    pattern = r"[{.+}]+"
    result = re.sub(pattern,  lambda smth: f"{dct[smth]}", data)
    return result
Но выдаёт KeyError <re.Match object; span=(7, 8), match='{'>, собственно, не знаю на что я надеялся. Понять, что именно написать вместо лямбды, не получается
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.12.2022, 10:25
Ответы с готовыми решениями:

Как проверить, допустимым ли является символ на соответствие части регулярного выражения?
У меня есть регулярное выражение. Как проверить строку на соответствие регулярному выражению понятно, а как проверить, допустимым ли...

Как изменить определенные части строк в текстовом файле
Добрый вечер форумчане, застрял, имеется текстовый файл с количеством строк около 70, я создал форму, считываю файл построчно и в...

QtextEdit возможность редактирования части текста и запрет перевода курсора на другие части текста
Добрый день. Посоветуйте пожалуйста, как можно реализовать такую штуку: есть QtextEdit, в нем задан текст, в тексте есть фиксированная...

5
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
29.12.2022, 10:40
Лучший ответ Сообщение было отмечено rim41 как решение

Решение

rim41, ну Семен Семеныч...
Python
1
2
3
4
5
6
7
8
>>> dct = {
...     'x': '11',
...     'a': '15',
...     'string': 'abc'
... }
>>> template="Hello, {string}, go {x} steps every day in {a} o'clock."
>>> template.format(**dct)
"Hello, abc, go 11 steps every day in 15 o'clock."
3
 Аватар для rim41
1045 / 313 / 78
Регистрация: 16.03.2020
Сообщений: 954
29.12.2022, 10:44  [ТС]
Welemir1,

Добавлено через 18 секунд
Век живи - век учись... Впервые такое вижу...
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
29.12.2022, 11:08
rim41, что впервые - формат или ** ?
0
 Аватар для rim41
1045 / 313 / 78
Регистрация: 16.03.2020
Сообщений: 954
29.12.2022, 11:49  [ТС]
Welemir1, использование этого вместе
Логически я понимаю, что тут всё правильно, но сама идея мне в голову не приходила. Как-то так получилось, что когда я плотно начал изучать работу со строками, практически сразу же добавили ф-строки, ну я и не стал вдаваться во все возможности .format
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
29.12.2022, 12:49
rim41, это единственная особенность формат из-за которой его нельзя чписывать со счетов
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.12.2022, 12:49
Помогаю со студенческими работами здесь

Как проверить соответствие текста в ячейке тому, что ищем
Или лыжи не едут или я не туда. 1. В ячейке текст введен в два-три ряда. Как проверить соответствие текста в ячейке и того что ищем? ...

Как сделать соответствие порядкового номера списка и его текста внутри?
Добрый день, есть такая задачка, у меня её решить не получилось. В общем есть список и кнопка: &lt;ol class=&quot;spisok&quot;&gt; ...

Как вытащить определенные куски текста из поля?
Имеются адреса: 300908,ТУЛЬСКАЯ ОБЛ, ТУЛА Г, ХОМЯКОВО П, ХОМЯКОВСКАЯ УЛ, д. 14, корп. А 300002,ТУЛЬСКАЯ ОБЛ, ТУЛА Г, ЛУНАЧАРСКОГО УЛ,...

Как подставить в ячейку определенные символы из текста
Есть строки: Сайт_Город1_Тест Сайт_Город2_Тест Сайт_Город3_Тест Нужно сделать, чтоб соседняя ячейка проверяла строку и...

Как вытащить из текста определенные слова МЕСЯЦЫ ?
как вытащить из текста определенные слова МЕСЯЦЫ в эксель


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru