作者os653 (allstar)
看板Python
標題[問題] 大檔案算CRC32
時間Wed Dec 29 06:12:20 2010
import binascii
import mmap
with open('10GB', 'r+b') as file:
map = mmap.mmap(file.fileno(), 0)
print binascii.crc32(map)
map.close()
現在用以上 code 能算出正確答案
不過電腦記憶體會全被吃光,完全沒辦法做其他事
請問有沒有比較好的辦法處理這個問題呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.46.141.48
1F:推 kaichan:mmap有offset,可分段讀入。crc32有oldcrc,可填入前一段計 12/29 10:11
2F:→ kaichan:算的crc 12/29 10:11
3F:→ os653:搞定了,很抱歉沒有看清楚 tutorial 問了這種蠢問題 ... 12/29 13:05
4F:推 smallyuyuyu:python的mmap,offset不是只能到2^32? 12/30 13:56
5F:→ os653:應該不只,我map下去後看size是正確的,算出來也是正確的 12/30 16:46
6F:推 smallyuyuyu:請教樓上 是跑在64bit機器上嗎 12/31 13:29
7F:→ os653:是的 12/31 14:11