讓我們考慮一個大文件(〜100MB)。讓我們考慮這個文件是基於行的(一個文本文件,相對較短的行~80個字符)。 如果我使用內置的open()
/file()
該文件將被加載到lazy manner。 I.E.如果我做aFile.readline()
只有一個文件塊將駐留在內存中。 urllib.urlopen()是否做了類似的事情(使用磁盤上的緩存)?urllib.urlopen()如何工作?
urllib.urlopen().readline()
和file().readline()
之間的性能差異有多大?讓我們考慮一下這個文件位於localhost上。一旦我用urllib.urlopen()
打開它,然後用file()
打開它。當我使用readline()
循環播放文件時,性能/內存消耗有多大?
處理通過urllib.urlopen()
打開的文件的最佳方式是什麼?逐行處理它會更快嗎?或者我應該加載一堆行(〜50)到列表中,然後處理列表?