簡體   English   中英

Python程序如何加載和讀取文件中的特定行?

[英]How can a Python program load and read specific lines from a file?

我有一個二進制格式的巨大數字文件,只需將其中的某些部分解析為數組。 我查看了numpy.fromfileopen ,但是他們沒有選擇從文件中的位置A讀取位置B. 可以這樣做嗎?

如果你正在處理“巨大的文件”,我不會簡單地閱讀 - 忽略所有內容,直到你真正需要數據為止。

相反:Python中的文件對象有一個.seek()方法,您可以使用該方法直接跳轉到需要開始解析數據的位置,從而繞過之前的所有內容。

with open('huge_file.dat', 'rb') as f:
    f.seek(1024 * 1024 * 1024)  # skip 1GB
    ...

另見: http//docs.python.org/2/tutorial/inputoutput.html#methods-of-file-objects

如果您知道您感興趣的數據的精確位置,您可以在文件對象上使用seek(<n bytes>)方法,如文檔所示 在開始閱讀之前,只需調用一次(使用給定的偏移量)。

暫無
暫無

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

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