У меня есть вложенный список:
collection_words = [['cat','doag','tseken'],['phisboal','melk','tsokoleyt'],['eagle','elephant','bare']]
Я хочу исправить некоторые элементы в этом вложенном списке, вот мой код:
from symspellpy.symspellpy import SymSpell, Verbosity
initial_capacity = 83000
max_edit_distance_dictionary = 2
prefix_length = 7
max_edit_distance_lookup = 2
sym_spell = SymSpell(initial_capacity, max_edit_distance_dictionary, prefix_length)
def correct_spelling(doc):
return [[[word.term for word in sym_spell.lookup_compound(words,max_edit_distance_lookup)]for words in texts]for texts in doc]
correct_spelling(collection_words)
, но я получаю
TypeError: decoding to str: need a bytes-like object, list found
более длинное решение будет:
for list in collection_words:
corrected_list = []
for words in list:
words =sym_spell.lookup_compound(words,max_edit_distance_lookup)]
for word in words:
corrected_list.append(word.term)
, но это не обеспечивает желаемой структуры вложенного списка.Желаемый результат:
[['cat','dog','chicken'],['fishbowl','milk','chocolate'],['eagle','elephant','bare']]
есть какие-либо советы?