Título: [Python] Comparar listas de palabras
Publicado por: Meta en 14 Noviembre 2010, 00:45 am
Buenas:
Aquí si que Python me tumba.
Ver ejercicio. (http://www.subeimagenes.com/img/hex-c-6825.jpg)
Parece que aquí voy a tardar un tiempito con este ejercicio ya que parece o al menos me da la impresión que es código largo.
Título: Re: [Python] Comparar listas de palabras
Publicado por: .:WindHack:. en 14 Noviembre 2010, 03:26 am
Realmente el código no es extenso. A mí se me ocurrió hacerlo de la siguiente manera: sString = raw_input('Cadena: ') # Pedimos la cadena... sString = sString.lower() # Convertimos a minusculas... lListA = sString.split() # Creo la lista con todos los elementos de la cadena... lListB = [] # Lista vacia for i in lListA: # Recorro la lista original if i not in lListB: # Si el elemento no esta en la otra lista... lListB.append(i) #... lo agrego print lListB
Título: Re: [Python] Comparar listas de palabras
Publicado por: Meta en 14 Noviembre 2010, 04:43 am
Gracias, me funciona. Con C# lo he encontrado así: static void Main(string[] args) { List <int> lista = new List <int>(9; int ingresos = 0; while(ingresos <= 9) { Console.WriteLine("Ingrese un numero positivo:"); string valor = Console.ReadLine(); int valint = 0; if (!int.TryParse(valor, out valint)) { Console.WriteLine("El valor ingresado no es numerico"); continue; } if(valint < 0) { Console.WriteLine("El valor ingresado debe ser positivo"); continue; } lista.Add(valint); ingresos++; } //se muestra la lista de valores ingresados Console.WriteLine("Numeros Ingresados:"); foreach (int item in lista) { Console.WriteLine(item); } }
Edito:Otra forma de hacerlo. # Declaro las listas lista_1 = ["Una","frase","formada","con","palabras"] lista_2 = ["Otra","frase","con","otras","palabras"] resultado = [] # Convierto la palabra a minúsculas y la agrego a la lista for palabra in lista_1: palabra_min = palabra.lower() resultado.append(palabra_min) # Comparo ambas listas y luego convierto a mínusculas for a in lista_2: if a not in lista_1: palabra_min = a.lower() resultado.append(palabra_min) print resultado
Título: Re: [Python] Comparar listas de palabras
Publicado por: Novlucker en 16 Noviembre 2010, 14:03 pm
Aunque creo que usaría el método de .:WindHack:. por simplicidad, aquí tienes ooootra manera más de hacerlo sin usar una segunda lista, solo modificando la que hemos obtenido en principio. frase = raw_input('Ingresa una frase: ') lista = frase.lower().split(' ') i = 0 while i<len(lista): if lista[i] in lista[:i]: lista.pop(i) else: i+=1 print lista
Saludos
|