によってテキストの段落を読むために私はPythonの初心者だと私はイテレータと次メソッドを使用して、段落することにより、EXAMPLE.SQLファイルの段落を読みしようとしています。問題は、forループやline = next(it)を使わずに次のメソッドで行ごとに読み込む方法を理解できないことです。どんな助けでも大歓迎です。ここまでは私が今まで持っているものです。Pythonのどの段落
class ByParagraph:
def __init__(self, text):
self.text = text
def __iter__(self):
return self
par = ""
def __next__(self):
par = ""
if (I still need to decide how to stop the iterations):
raise StopIteration
if str(self.text).isspace():
return par.strip()
else:
return ' '.join([par, str(self.text)])
with open("example.txt") as f:
for par in ByParagraph(f):
print('BEGIN PAR' + par + 'END PAR')
どのように間違っているか説明できますか? '\ n'だけを含む行をたどるまで、' __next__'で行を読んでおきたいと思うでしょう。実際にはジェネレータ関数を使うほうが簡単かもしれませんが、イテレータを使うことを学ぶのはポイントですか? –
'nltk'にはこの機能が組み込まれています – inspectorG4dget
@PaulRooneyはい、まさに私がやろうとしていることです。 __nextの行を読んでください__私はいつもループを使いますが、私はその方法でそれをしなくてはならないと思います...そしてそうです、それがポイントですが、結果なしでたくさんのことを試みました。 – Sofia