Dadas las palabras, la tarea es extraer diferentes palabras de un conjunto de caracteres utilizando el diccionario definido.
Enfoque:
Python en su lenguaje define un módulo incorporado enchant
que maneja ciertas operaciones relacionadas con las palabras. En el enfoque mencionado, se utilizan los siguientes métodos.
check() :
Comprueba si una string es una palabra o no y devuelve verdadero si una string es una palabra, de lo contrario devuelve falso.permutations(str_arr, str_len) :
Proporciona la combinación de una string según la longitud de string mencionada.
Existe la posibilidad de que el enchant()
módulo no esté presente, por lo que se puede instalar usando pip3 install enchant .
A continuación se muestra la implementación del código Python del enfoque anterior.
# importing libraries import keyword import enchant from itertools import permutations d = enchant.Dict("en_US") words = [] perm_word = [] # character combination to # list down all the words str_arr = "star" # Getting the string length to use it in the loop. str_len = 4 print("Length of the string is : ", str_len ) while str_len > 1 : if str_len == len(str_arr): perm = list(permutations(str_arr)) str_len = str_len -1 for i in list(perm): words =''.join(i) if d.check(words): perm_word.append(words) print ( words + " is an English words") print ("perm_word", perm_word) elif str_len > 1: perm = list(permutations(str_arr, str_len)) str_len = str_len -1 for i in list(perm): words =''.join(i) if d.check(words): perm_word.append(words) print ( words + " is an English word") print ("perm_word", perm_word) else: str_len = 0
Producción :
star is an English words tars is an English words arts is an English words rats is an English words perm_word [‘star’, ‘tars’, ‘arts’, ‘rats’] sat is an English word tar is an English word art is an English word rat is an English word perm_word [‘star’, ‘tars’, ‘arts’, ‘rats’, ‘sat’, ‘tar’, ‘art’, ‘rat’] st is an English word ts is an English word tr is an English word as is an English word at is an English word rs is an English word rt is an English word perm_word [‘star’, ‘tars’, ‘arts’, ‘rats’, ‘sat’, ‘tar’, ‘art’, ‘rat’, ‘st’, ‘ts’, ‘tr’, ‘as’, ‘at’, ‘rs’, ‘rt’]
Publicación traducida automáticamente
Artículo escrito por sarthakn19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA