[Python] Lettura file binario
orsomannaro
orsomannaro a gmail.com
Lun 5 Nov 2012 16:09:58 CET
E' la prima volta che ho a che fare con yield e lambda quindi mi farebbe
piacere avere vostro ok su quanto segue.
Devo importare dati da diversi file binari.
Per ognuno devo saltare i primi n byte e poi leggere record di m bytes.
def file_in_chunks(filename, chunksize, headersize):
with open(filename, 'rb') as f:
f.seek(headersize)
while True:
chunk = f.read(chunksize)
if len(chunk) < chunksize: break
yield chunk
file1_records = lambda f: file_in_chunks(f,1024,1024)
file2_records = lambda f: file_in_chunks(f,512,1024)
...
def import_file1
import os
f = os.path.join(FILES_ROOT, file1)
for record in file1_records(f):
Grazie.
Maggiori informazioni sulla lista
Python