由于在一些场景中,所有的字母都连在了一起,所以我们需要将字母分割成单词的形式。

1. 安装

pip install -U symspellpy

2. 下载词典

  下载链接为https://download.csdn.net/download/herosunly/18903125

3. 单词分割

import pkg_resources
from symspellpy.symspellpy import SymSpell

sym_spell = SymSpell(max_dictionary_edit_distance=0, prefix_length=7)
dictionary_path = pkg_resources.resource_filename(
    "symspellpy", "frequency_dictionary_en.txt")

sym_spell.load_dictionary(dictionary_path, term_index=0, count_index=1)

# a sentence without any spaces
input_term = "thequickbrownfoxjumpsoverthelazydog"
result = sym_spell.word_segmentation(input_term)
print("{}, {}, {}".format(result.corrected_string, result.distance_sum,
                          result.log_prob_sum))

需要注意的是distance_sum的范围为[0, len(input_term)],其中0表示input_term就是一个单词,而len(input_term)表示该单词无法进行划分。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐