Форум сайта python.su
Добрый день, уважаемые участники сообщества.
Для расширения границ профессиональной компетенции (я переводчик, который пытается вырасти в инженера локализации) приходится в сжатые сроки осваивать Python для конкретных целей: парсинга, композиции и декомпозиции текстовой информации.
Задача следующая:
Необходимо из каталога (включающего неограниченное количество подкаталогов) извлечь информацию из файлов определенного типа (.txt, .lua), заключенную в двойные кавычки, в отдельный файл.
Также меня интересует, как можно получить адрес извлеченного токена (куска текста), чтобы затем произвести запись в точное место исходного файла, и как можно изменить/задать кодировку полученного текста.
Мои навыки программирования (нулевые) не поспевают за ходом мысли, поэтому буду благодарен за любую помощь.
До последнего момента не хотел беспокоить профессиональное сообщество, но подумал, что такие задачи мне придется решать регулярно и нужно хвататься за возможность ускорить обучение. Еще раз спасибо!
Офлайн
not42вы можете использовать listdir из модуля os или glob из модуля glob
включающего неограниченное количество подкаталогов
not42Вопросы фильтрации текста решаются обычно модулем re после изучения языка регулярных выражений.
заключенную в двойные кавычки
not42re позволяет получить позицию.
как можно получить адрес извлеченного токена (куска текста),
not42Это невозможно. Точнее обычные файлы не имеют эффективной функции добавления / изменения текста в середине файла. Поэтому программисты никогда этого не делают.
чтобы затем произвести запись в точное место исходного файла
not42У текста в оперативной памяти нет кодировки. (Если быть точнее то используется unicode). Кодировку можно задать при чтении из файла или при запись в файл. Операции открытия файла имеют ключик encoding.
и как можно изменить/задать кодировку полученного текста.
Офлайн
doza_andos.walk() + (os.path.splitext() | re.search())
вы можете использовать listdir из модуля os или glob из модуля glob
not42Попробуй для начала вывести на экран полные пути к нужным файлам.
Необходимо из каталога (включающего неограниченное количество подкаталогов) извлечь информацию из файлов определенного типа (.txt, .lua)
not42делает неподъёмными даже элементарные вещи. Здесь нужно по-другому думать.
я переводчик, который пытается вырасти в инженера локализации
Отредактировано py.user.next (Дек. 21, 2015 02:43:57)
Офлайн
py.user.next и doza_and, спасибо за помощь, буду разбираться! Вода камень точит, а в моей работе воды много
Офлайн
doza_and
Это невозможно. Точнее обычные файлы не имеют эффективной функции добавления / изменения текста в середине файла. Поэтому программисты никогда этого не делают.
Офлайн