それで!
を使用した関数は次のitertoos.groupby
とおりです。
from string import whitespace, punctuation
from itertools import groupby
def tokenize(phrase, sepcat=True):
separators = dict.fromkeys(whitespace + punctuation, True)
return [''.join(g) for k, g in groupby(phrase, separators.get)]
現在、出力は次のようになります。
ご覧のとおり、連続する区切り記号は 1 つの文字列に連結されます。この動作をオプションにしたいのですが (関数へのパラメーターで示されるようにsepcat
)、ここで障害にぶつかります... にパラメーターを渡すにはどうすればよいseparators.get
ですか?
functools
ここで私を助けることができますか?