First, you should consider reading the documentation of struct.unpack_from and struct.pack_into at http://docs.python.org/library/struct.html quite carefully. It says, that these commands take a parameter called offset, which names the location of the data in a buffer (e.g. an opened file).
example: bloco='>%df' % (252) # Format string (252 floats) fa = open('testIN.bin', 'rb') # open for reading in binary mode off = 0 # suppose i want to read block at beginning of file my_array=struct.unpack_from(bloco, fa, off) #read data now write them to another file: fb = open('testOUT.bin', 'r+b') # open for updating in binary mode off = 0 # suppose i want to write block at beginning of file struct.pack_into(bloco, fb, off, *my_array) #write data to testOUT -- http://mail.python.org/mailman/listinfo/python-list