¿Qué causa el error "_pickle.UnpicklingError: clave de carga no válida" '?

Estoy tratando de almacenar 5000 elementos de datos en una matriz. Estos 5000 elementos se almacenan en un archivo existente (por lo tanto, no está vacío).

Pero recibo un error y no sé qué lo está causando.

EN:

def array():

    name = 'puntos.df4'

    m = open(name, 'rb')
    v = []*5000

    m.seek(-5000, io.SEEK_END)
    fp = m.tell()
    sz = os.path.getsize(name)

    while fp < sz:
        pt = pickle.load(m)
        v.append(pt)

    m.close()
    return v

FUERA:

line 23, in array
pt = pickle.load(m)
_pickle.UnpicklingError: invalid load key, ''.

Respuestas a la pregunta(4)

Su respuesta a la pregunta