Поиск строки в большом однострочном текстовом файле в PythonPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Поиск строки в большом однострочном текстовом файле в Python

Сообщение Anonymous »

Я пытаюсь написать программу для поиска определенных строк в чрезвычайно большом текстовом файле, а затем возвращать строку, а также определенное количество символов до и после нее из файла, и иметь возможность быстро сделайте это тысячи раз.
Файл состоит из одной строки и имеет размер более гигабайта, и большинство подходов, которые я видел, работают путем разбиения файла на строки.Я хочу найти способ эффективного поиска И воспользоваться преимуществами нескольких потоков. Я пытался использовать библиотеку Polars, но не уверен, что она будет работать только с длинным текстовым файлом.
Это то, что я написал до сих пор, и это работает, но не очень быстро
with open(r"file.txt", 'rb', 0) as file:
for date in D:
x = date.encode('UTF-8')

s = mmap.mmap(file.fileno(), 0, access=mmap.ACCESS_READ)
Pos = s.find(x)

if Pos != -1:
file.seek(Pos-30)
P.append(file.read(60 + len(date)).decode('UTF-8'))

else:
print(date + " was not found")
file.close()


Подробнее здесь: https://stackoverflow.com/questions/724 ... r-a-string
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»