在 Python 中取得大檔案的行數
計算大檔案的行數可能是一項資源密集型任務。透過優化效率和記憶體消耗,我們可以有效地應對這項挑戰。
一種廣泛採用的方法是在 for 迴圈中利用枚舉,如提供的範例所示。然而,這種方法可能會消耗大量效能。
更有效率的解決方案
為了更快、更簡潔的解決方案,我們可以採用以下方法:
num_lines = sum(1 for _ in open('myfile.txt'))
這一行程式碼利用生成器表達式的靈活性來計算行數,而無需迭代整個檔案內容並將它們儲存在
進一步的效能增強
為了提高速度和穩健性,我們可以合併二進位模式(rb)並將程式碼包含在with 區塊中來處理檔案關閉:
with open("myfile.txt", "rb") as f: num_lines = sum(1 for _ in f)
已棄用用法
在 3.3 之前的 Python 版本中,使用 rbU 模式中的「U」來啟用通用換行符支援。然而,這種用法已經過時了,應該使用 rb 模式來代替。 Python 3.11 刪除了 rbU 中的“U”,使 rb 成為標準選項。
以上是如何使用Python高效計算大檔案中的行數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!