давно
Старший Модератор
312929
1973
03.06.2020, 19:23
общий
это ответ
Здравствуйте, kandALS!
Вариант с использованием регулярных выражений (regexp):[code lang=python]import re
f = open("input.txt", 'r')
src, dst, text = f.read().split('\n',2)
f.close()
text = re.sub(r'(\s)'+src+r'([\.,:;!?\s])', r'\1'+dst+r'\2', text)
text = re.sub(r'(\s)'+src.capitalize()+r'([\.,:;!?\s])', r'\1'+dst.capitalize()+r'\2', text)
f = open("output.txt", 'w')
f.write(text)
f.close()[/code]
Замена по шаблону (функция re.sub) используется два раза - для слова-образца, начинающегося со строчной буквы и с заглавной.