Форум сайта python.su
python1991Так ты даже виндовый код не привёл. То, что ты привёл, это какая-то лажа, начиная от неправильных регулярок, заканчивая повсеместными findall()'ми, которые создают списки на каждой строке.
на Линуксе выводит все правильно , а вот на Винде ничего не выводит не в файл не в консоль
Офлайн
Ребят всем спасибо за отклики и за комменты!!!
Проблему решил следущим образом
Все отставил только заменил кусок кода кто смотрел (начало)
там где идут рег выражения оставил также правда с некоторыми изменениями которые Вы посоветовали
str_str = “”
str_list =
f = open(“C:\\111\\z.txt”,“r”)
for line in f.readlines():
if len(line.strip()) <= 0:
continue
elif line.strip() != “—————————”:
str_str = str_str + line.strip()
elif line.strip() == “—————————”:
str_list.append(str_str); str_str = “”
Проблема была в том что переменная str_str не может хранить строки всего файла (150 Мбайт)
Офлайн
python1991Так вот у тебя строка, которая точно так же весь файл загружает в оперативную память (что не нужно делать)
Проблема была в том что переменная str_str не может хранить строки всего файла (150 Мбайт)
python1991for line in f.readlines():
Офлайн
> Согласен попробую в понедельник использовать как было замечено “Rodegast”-ом не re.findall(), а re.compile() может поможет.
compile не заменяет findall. Т.е. у тебя должно быть что-то вроде:
rex_start_time = re.compile(r"\d{4}\s\d{2}[.]\w{3}\s\d{2}[:]\d{2}[:]\d{2}[:]")
Офлайн