self._check_can_read()
return self._buffer.readline(size)
+ def __iter__(self):
+ self._check_can_read()
+ return self._buffer.__iter__()
+
def readlines(self, size=-1):
"""Read a list of lines of uncompressed bytes from the file.
self._check_not_closed()
return self._buffer.readline(size)
+ def __iter__(self):
+ self._check_not_closed()
+ return self._buffer.__iter__()
+
class _GzipReader(_compression.DecompressReader):
def __init__(self, fp):
self._check_can_read()
return self._buffer.readline(size)
+ def __iter__(self):
+ self._check_can_read()
+ return self._buffer.__iter__()
+
def write(self, data):
"""Write a bytes object to the file.
--- /dev/null
+Add ``__iter__()`` method to :class:`bz2.BZ2File`, :class:`gzip.GzipFile`, and
+:class:`lzma.LZMAFile`. It makes iterating them about 2x faster. Patch by
+Inada Naoki.