Jim Garrison wrote: > andrew cooke wrote: >> Jim Garrison wrote: >>> I'm an experienced C/Java/Perl developer learning Python. >>> What's the canonical Python way of implementing this pseudocode? [ ... ] >> but not doing much binary i/o >> myself, i suggest: >> >> with open(...) as f: >> while (True): >> buf = f.read(10000) >> if not buf: break >> ... [ ... ]
> For a one-off,,your first example would work fine. See the > other reply from Tim Chase for a much more Pythonesque > pattern. I don't want "for line in f:" because binary > files don't necessarily have lines and I'm bulk processing > files potentially 100MB and larger. Reading them one line > at a time would be highly inefficient. It would be more work, but subclassing the file class, with a next method yielding the binary record you want would be fairly clean. Mel. -- http://mail.python.org/mailman/listinfo/python-list