私はhadoopとpythonを使用して転置インデックスを作成しています。Pythonで行/単語のバイトオフセットを含める方法を知りたいです。私はこのようなものが必要です
hello hello.txt@1124
完全転置インデックスを作成するための場所が必要です。助けてください。
私はhadoopとpythonを使用して転置インデックスを作成しています。Pythonで行/単語のバイトオフセットを含める方法を知りたいです。私はこのようなものが必要です
hello hello.txt@1124
完全転置インデックスを作成するための場所が必要です。助けてください。
このような?
file.tell()
stdioのftell()のように、ファイルの現在の位置を返します。
http://docs.python.org/library/stdtypes.html#file-objects
残念ながら、OPはファイルの代わりにstdinを使用しているため、tell()は機能しません。しかし、必要なものを提供するために、その周りにラッパーを作成することは難しくありません。
class file_with_pos(object):
def __init__(self, fp):
self.fp = fp
self.pos = 0
def read(self, *args):
data = self.fp.read(*args)
self.pos += len(data)
return data
def tell(self):
return self.pos
次に、代わりにこれを使用できます。
fp = file_with_pos(sys.stdin)