Python有memoryview
用於查看緩衝區。Python流視圖
有沒有類似io流的東西,或者是一些實現它的庫?
的什麼,我想應該是(不當然的工作)的例子:
>>> import io
>>> sr = io.BytesIO(b'12345')
>>> print(sr[2:3]).read()
... b'3'
(這只是一個例子,底層的流不必是一個緩衝可言)
我希望看到普通字節的原因是流底層的內容可能非常大。
Python有memoryview
用於查看緩衝區。Python流視圖
有沒有類似io流的東西,或者是一些實現它的庫?
的什麼,我想應該是(不當然的工作)的例子:
>>> import io
>>> sr = io.BytesIO(b'12345')
>>> print(sr[2:3]).read()
... b'3'
(這只是一個例子,底層的流不必是一個緩衝可言)
我希望看到普通字節的原因是流底層的內容可能非常大。
您可以考慮mmap模塊。據我瞭解您的需求它可能會提供所需的功能。
感謝您的建議,我試了一下,一個切片返回類型'字節'。我更新了這個問題來說明使用流的目的。 – simonzack
通過使用'mmap',您可以將文件的相應區域(稱爲「頁面」)加載到內存中,並將未使用的文件加載到操作系統。如果您需要更精確地控制緩存在不同使用場景中的行爲方式,則應逐步下達特定的系統設施,例如Linux的[mmap(2)](http://linux.die.net/man/2/mmap)。如果您不需要這樣的精度,那麼您可以安全地假定文件的區域在訪問它們並在稍後卸載時加載。 – user3159253
流已經有'.seek'和'.read';你還需要什麼? – Eevee
你想用這個圖書館做什麼? –
我想創建另一個流的獨立視圖。當然,我可以使用seek或read,但這很方便,就像內存視圖一樣。 – simonzack