簡體   English   中英

有沒有一種真正有效(快速)的方式來讀取 python 中的大文本文件?

[英]Is there a really efficient (FAST) way to read large text files in python?

我希望盡快從 python 中的大型文本文件中打開和獲取數據(它幾乎有 62603143 行 - 大小為 550MB )。 因為我不想給我的電腦帶來壓力,所以我按照以下方式進行,

import time
start = time.time()
for line in open(filePath):
    #considering data as last element in file
    if data in line:
        do_something(data)
end = time.time()
print "processing time = %s" % (count, end-start)

但是,正如我通過上述方法所做的那樣,讀取完整文件需要將近18 秒(我的計算機具有Intel i3 處理器和 4 GB RAM )。 同樣,如果文件大小更大,則需要更多時間並且從用戶的角度考慮它非常大。 我在論壇上閱讀了很多意見,提到了多個Stack Overflow問題,但沒有獲得從大文件中讀取和獲取數據的快速有效的方法。 在 Python 中真的有什么方法可以在幾秒鍾內讀取大文本文件嗎?

不,沒有比 Python 更快的逐行處理文件的方法。

您的瓶頸在於您的硬件,而不是您讀取文件的方式。 Python 已經在盡其所能(在拆分為換行符之前使用緩沖區以更大的塊讀取文件)。

我建議將您的磁盤升級到 SSD。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM