ファイルオブジェクトを読み込みするためのAPIを使用していますが、既存のファイルの一部だけを渡したいので、 APIは最初のnバイトだけを読み取ります。私はオーバーライドして、どのように正確にするために、他のどのような方法でわからないんだけど...以外ファイルの一部分を表すPythonファイルオブジェクトを作成する方法
class FilePortion(file):
def __init__(self, name, mode, lastByteToRead):
self.LAST_BYTE = lastByteToRead
super(FilePortion, self).__init__(name, mode)
def read(self, size=None):
position = self.tell()
if position < self.LAST_BYTE:
readSize = self.LAST_BYTE - position
if size and size < readSize:
readSize = size
return super(FilePortion, self).read(readSize)
else:
return ''
:私は、私は自分のクラスで「ファイル」を包むことができようなものを想定しています。どうすればnext()を上書きできますか?これを行うより良い方法はありますか?
あなたはこの http://stackoverflow.com/questions/519633/lazy-method-for-reading-big-file-in-python –