С уважением, ТАК
Я новичок в Python и Perl.Я пытался решить простую проблему и завязать узлы с синтаксисом.Я надеюсь, что у кого-то есть время и терпение, чтобы помочь.У меня есть файл размером 25 МБ в формате «.txt», в котором содержатся статьи в новостных лентах, относящиеся к 1970 году. Каждая новостная статья соединяется с другой, и для разграничения используется только выражение «Авторское право».Каждая новость начинается с «Пункта ХХХ ХХХ ДОКУМЕНТОВ».Существуют определенные метаданные, которые повторяются повсюду, я буду использовать их для пометки позже.
Я хочу разделить этот файл размером 25 Мбайт на отдельные файлы .txt, каждый из которых содержит одну новостную статью (т. Е. Текст между «ДОКУМЕНТАМИ»).и «Авторское право», сохраняя каждое с другим именем (очевидно).
Я пытаюсь 1) открыть файл ... 2) перебрать строки в файле, проверяя разделитель eof, и если оннет записи строки в список 3) записать этот список в отдельный маленький файл.
У меня большие проблемы с изменением имен файлов с помощью счетчика, и как мне заставить Python начать с того места, где я оставилвыключен, уместна ли функция «поиск»?
До сих пор я пробовал этот подход, совершенно безуспешно:
myfile = open ("myfile.txt", 'r')
filenumber = 0
for line in myfile.readline():
filenumber += 1
w=0
while myfile.readline() != '\s+DOCUMENTS\s*\n'
### read my line into a list
mysmallfile()['w'] = [myfile.readline()]
w += 1
output = open('C:\\Users\\dunner7\\Documents\###how do I change the filename each iteration???', 'w')
output.writelines(mysmallfile)
###go back to start.
Спасибо за ваше время и терпение.
RD
Вот образец текстового файла:
1 of 575 DOCUMENTS
The Washington Daybook
January 28, 2011
Департамент здравоохранения и социальных служб (HHS);Управление по санитарному надзору за качеством пищевых продуктов и медикаментов (FDA) (FR стр. 72832) проводит заседание Группы неврологических устройств Консультативного комитета по медицинским устройствам для обсуждения и выработки рекомендаций относительно возможной реклассификации устройств, указанных для использования в электросудорожной терапии, 27-28 января.
ВРЕМЯ: 8:00
РАСПОЛОЖЕНИЕ: Hilton Washington DC North / Gaithersburg, Ballroom, 620 Perry Parkway, Gaithersburg, Md.
КОНТАКТ: Джеймс Энглс, 800-741-8138[Примечание: используйте код: 3014512513, для вызова информации.]
ДАТА ПОГРУЗКИ: 28 ноября 2010 г.
ЯЗЫК: АНГЛИЙСКИЙ
ТИП: Встреча
Copyright 2011 Federal Information and News Dispatch, Inc.
2 of 575 DOCUMENTS
The Washington Daybook
January 27, 2011
Департамент здравоохранения и социальных служб (HHS);Управление по санитарному надзору за качеством пищевых продуктов и медикаментов (FDA) (FR стр. 72832) проводит заседание Группы неврологических устройств Консультативного комитета по медицинским устройствам для обсуждения и выработки рекомендаций относительно возможной реклассификации устройств, указанных для использования в электросудорожной терапии, 27-28 января.
ВРЕМЯ: 8:00
РАСПОЛОЖЕНИЕ: Hilton Washington DC North / Gaithersburg, Ballroom, 620 Perry Parkway, Gaithersburg, Md.
КОНТАКТ: Джеймс Энглс, 800-741-8138[Примечание: используйте код: 3014512513, для вызова информации.]
ДАТА ПОГРУЗКИ: 28 ноября 2010 г.
ЯЗЫК: АНГЛИЙСКИЙ
ТИП: Встреча
Copyright 2011 Federal Information and News Dispatch, Inc.
3 of 575 DOCUMENTS
FNS DAYBOOK
January 12, 2011 Wednesday
FUTURE EVENTS
СОБЫТИЕ: ВСТРЕЧА - ОТДЕЛ ЗДРАВООХРАНЕНИЯ И ЧЕЛОВЕКА (HHS);ПИЩЕВАЯ И ЛЕКАРСТВЕННАЯ АДМИНИСТРАЦИЯ (FDA) (FR СТРАНИЦА 72832);РАСПОЛОЖЕНИЕ: Hilton Washington DC North / Gaithersburg, Ballroom, 620 Perry Parkway, Gaithersburg, Md. - 27 января 2011 г., 8:00
РАЗДЕЛ: ФЕДЕРАЛЬНЫЕ АГЕНТСТВА И ОТДЕЛЕНИЯ - БУДУЩИЕ
ДЛИНА: 72 слова
ПРЕДМЕТ: Департамент здравоохранения и социальных служб (HHS);Управление по санитарному надзору за качеством пищевых продуктов и медикаментов (FDA) (FR стр. 72832) проводит заседание Группы неврологических устройств Консультативного комитета по медицинским устройствам для обсуждения и выработки рекомендаций относительно возможной реклассификации устройств, указанных для использования в электросудорожной терапии, 27-28 января.
КОНТАКТ: Джеймс Энглс, 800-741-8138 [Примечание: используйте код: 3014512513, для вызова информации.]
ДАТА НАГРУЗКИ: 10 января 2011
ЯЗЫК: АНГЛИЙСКИЙ
ТИП ПУБЛИКАЦИИ: Расписания событий
Copyright 2011 Federal News Service
All Rights Reserved