Войти Создать аккаунт

Вычитка · Шаг 1 из 4

Правила из файла

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

Что сделать

Прочитайте правила вычитки из файла, который правит сам корректор.

Что приходит

  • stroki — строки файла: шаблон | сообщение или шаблон | сообщение | замена

Что вернуть

Список кортежей (скомпилированный шаблон, сообщение, замена); черта одна — замена None; пустые строки, #, негодные правила пропущены.

Допишите функцию sobrat_pravila в редакторе справа. Результат верните через return — то, что напечатано, на проверку не влияет.

В проекте

Утилита читает этой функцией файл правил, который правит сам корректор, или правила по умолчанию. Решите шаг — и правила можно будет менять, не трогая программу.

Перед вызовом
opisanie = ["# правила вычитки", "", r"\s{2,} | два пробела подряд"]
sobrannye = sobrat_pravila(opisanie)
Вызов
[(shablon.pattern, soobshchenie, zamena) for shablon, soobshchenie, zamena in sobrannye]
Вернуть
[('\\s{2,}', 'два пробела подряд', None)]
Ctrl+Enter — проверить

Обсуждение

Вопросов пока нет.

Войдите, чтобы спросить.