高效計算大檔案中的行數需要記憶體最佳化和時間效率。一種常見的技術是使用 for 循環,但這會影響記憶體消耗。
更有效的方法是單行:
num_lines = sum(1 for _ in open('myfile.txt'))
此推導式透過以下方式對檔案中的行進行計數迭代它並使用 1 值作為計數器。但是,為了獲得更高的速度和穩健性,可以進行修改:
with open("myfile.txt", "rbU") as f: num_lines = sum(1 for _ in f)
使用 rbU 模式可以提高速度,但在 Python 3.3 及更高版本中已棄用。因此,建議使用 rb 代替。在 Python 3.11 中,U 標誌已被刪除。
請記住,這些解決方案旨在提高記憶體效率,同時保持準確的行計數。技術的選擇取決於具體要求和性能考慮。
以上是如何使用Python高效、準確地統計大檔案的行數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!