[Python-Dev] When to use EOFError?
André Malo
nd at perlig.de
Sun Jun 26 08:00:49 EDT 2016
* Serhiy Storchaka wrote:
> On 22.06.16 19:22, André Malo wrote:
> > I often concatenate multiple pickles into one file. When reading them,
> > it works like this:
> >
> > try:
> > while True:
> > yield pickle.load(fp)
> > except EOFError:
> > pass
> >
> > In this case the truncation is not really unexpected. Maybe it should
> > distinguish between truncated-in-the-middle and
> > truncated-because-empty.
> >
> > (Same goes for marshal)
>
> This is interesting application, but works only for non-truncated data.
> If the data is truncated, you just lose the last item without a notice.
Yes (as said). In my case it's typically not a problem, because I write them
myself right before reading them. It's a basically about spooling data to
disk in order to keep them out of the RAM.
However, because of the truncation issue it would be nice, to have a
distinction between no-data and truncated-data.
Cheers,
--
Winnetous Erbe: <http://pub.perlig.de/books.html#apache2>
More information about the Python-Dev
mailing list