Python | Extracción de palabras de un conjunto de caracteres usando el diccionario

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 enchantque 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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *