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

Документы по шаблону · Шаг 4 из 4

Имена готовых файлов

Сто договоров должны лечь в папку под понятными именами — «Договор 17 Иванов.txt». Но в таблице встречается ООО «Рога/Копыта» с косой чертой, а Ивановых трое. Windows не примет в имени файла косую черту и двоеточие, а macOS считает «Иванов.txt» и «иванов.txt» одним файлом: второй договор молча затрёт первый.

Что сделать

Придумайте каждой строке имя файла по образцу — без запрещённых знаков и без совпадений с уже выданными именами.

Что приходит

  • obrazec — образец имени с полями, как в шаблоне: "Договор ${nomer} ${fio}.txt"

  • stroki — список строк таблицы, словари «столбец → значение»; все поля образца в них есть

Что вернуть

Список имён файлов — по одному на строку, в том же порядке.

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

В проекте

Программа зовёт imena_faylov один раз на все годные строки и записывает каждый документ из шага 3 под своим именем. В пробном показе она печатает эти имена, ничего не записывая.

Пример

Образец «Договор ${nomer} ${fio}.txt» и две строки — 17, Иванов и 18, ООО "Рога/Копыта" — дают «Договор 17 Иванов.txt» и «Договор 18 ООО Рога_Копыта.txt»: кавычки и косая черта в имени файла запрещены и стали подчёркиваниями.

Тот же пример кодом
Перед вызовом
obrazec = "Договор ${nomer} ${fio}.txt"
stroki = [{"nomer": "17", "fio": "Иванов"}, {"nomer": "18", "fio": 'ООО "Рога/Копыта"'}]
Вызов
imena_faylov(obrazec, stroki)
Вернуть
['Договор 17 Иванов.txt', 'Договор 18 ООО _Рога_Копыта_.txt']
Ctrl+Enter — проверить

Обсуждение

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

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