[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