
igualar palabras en un texto con cadenas en memoria
Publicado por Roberto (1 intervención) el 10/05/2014 06:01:48
Hola, estoy haciendo una aplicación a la que le ingreses una cadena de caracteres, haga todas las permutaciónes posibles y elimine repetidos.
Las palabras obtenidas de las permutaciónes se deben comparar línea por línea hasta encontrar una línea igual a la permutación, y repetir el proceso con las permutaciones restantes.
El archivo contiene esta información:
manila
maria
ana
marta
o también:
https://www.dropbox.com/s/v1s5rg0szz2mzs2/espanol.dic
Aquí anexo un poco de código:
Estuve imprimiendo el tipo de "word" y de "word_dic", y las 2 son tipo str, por lo tanto debería funcionar, cosa que no hace...
Estoy probando con esto:
y su resultado es este:
https://www.dropbox.com/s/5xe40kiigbw0cre/dic.png
El cuál debería ser:
ana
########## Encontrado!! ##########
Alguna duda acerca de lo que quiero hacer, por favor diganme...
De antemano, gracias.
https://www.dropbox.com/s/x0fkgrk2uju5gf0/test.py
Las palabras obtenidas de las permutaciónes se deben comparar línea por línea hasta encontrar una línea igual a la permutación, y repetir el proceso con las permutaciones restantes.
El archivo contiene esta información:
manila
maria
ana
marta
o también:
https://www.dropbox.com/s/v1s5rg0szz2mzs2/espanol.dic
Aquí anexo un poco de código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
from __future__ import print_function
import os, re, itertools
new_dic_file = "espanol.dic"
def uniq(lst):
# Eliminar repetidos
key = dict.fromkeys(lst).keys()
lst = list(key)
return lst
def match(chars, num_chars):
# Obtener las permutaciones de la cadena ingresada
combs = itertools.permutations(chars, num_chars)
result = []
for combo in combs:
result.append("".join(combo))
# Iterar con el diccionario español y comparar con las combinaciones de la cadena ingresada
dic = open(new_dic_file)
aux = dic.readlines()
del dic
aux = uniq(aux)
for word in result:
for word_dic in aux:
print()
print(word, word_dic, end="")
print(type(word), type(word_dic), end="")
if word == word_dic:
print(word)
print("########## Encontrado!! ##########")
Estuve imprimiendo el tipo de "word" y de "word_dic", y las 2 son tipo str, por lo tanto debería funcionar, cosa que no hace...
Estoy probando con esto:
1
match("aan", 3)
y su resultado es este:
https://www.dropbox.com/s/5xe40kiigbw0cre/dic.png
El cuál debería ser:
ana
########## Encontrado!! ##########
Alguna duda acerca de lo que quiero hacer, por favor diganme...
De antemano, gracias.
https://www.dropbox.com/s/x0fkgrk2uju5gf0/test.py
Valora esta pregunta


0