2011-02-04 26 views
0

我正在尋找一個python中的示例來映射1gb文件。有沒有人有我可以使用的例子?需要在python中使用mmap函數的示例

該文件可以是任何隨機文本。我只是想看看,看看有什麼是做這種正確的方法...

+5

文檔中的示例如何? http://docs.python.org/library/mmap.html – 2011-02-04 01:28:52

回答

2

下面是一個例子,可以幫助你在Python MMAP理解(3.0+)

下面的代碼打開一個文件,然後內存映射它。它執行映射文件的readline()方法,證明它和標準文件一樣工作。然後它讀寫映射文件的片段(訪問映射文件內容的同樣有效的方式,它不會改變文件指針)。最後,文件指針在開始時重新定位,並且讀取(更新的)內容(「14」是write()函數的返回值,它總是返回寫入的字節數。)

>>> with open("myfile.txt", "wb") as f: 
... f.write(b"Hello Python!\n") 

>>> import mmap 
>>> with open("myfile.txt", "r+b") as f: 
... mapf = mmap.mmap(f.fileno(), 0) 
... print(mapf.readline()) # prints b"Hello Python!\n" 
... print(mapf[:5]) # prints b"Hello" 
... mapf.tell() 
... mapf[6:] = b" world!\n" 
... mapf.seek(0) 
... print(mapf.readline()) # prints b"Hello world!\n" 
... mapf.close() 
... 
b'Hello Python!\n' 
b'Hello' 
14 
b'Hello world!\n' 
相關問題