確定大檔案的行數對於各種應用程式至關重要。雖然使用 for 循環的傳統方法可能非常耗時且佔用大量內存,但 Python 提供了一種最佳化的解決方案。
以下程式碼片段展示了一種單行方法行計數,優於問題中提出的循環方法:
num_lines = sum(1 for _ in open('myfile.txt'))
此程式碼利用Python 的生成器表達式,它會迭代檔案中的每一行,而不將所有行保存在記憶體中。 sum(1 for _ in ...) 結構計算行數。
為了進一步優化速度並提高魯棒性,請考慮以下增強:
具有以下增強功能的更新程式碼片段:
with open("myfile.txt", "rb") as f: num_lines = sum(1 for _ in f)
Python 中已棄用的rbU 模式3.3及更高版本,使用rb代替。此模式在 Python 3.11 中被刪除。
以上是Python 如何有效率地計算超大檔案中的行數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!