Registrarse
Home
Foros
Miembros
Calendario
Normas
Ayuda

Foros de usuarios de openSUSE
Retroceder   ForoSUSE > Zona Técnica > Programación y Scripts


Síguenos en Twitter Suscríbete a nuestras noticias Acompáñanos en Facebook

Respuesta
 
Herramientas Desplegado

[Python] Comparar listas de palabras
  #1  
Antiguo 14-nov-2010, 02:23
Meta Meta está desconectado
Habitual
 
Fecha de Ingreso: 28-julio-2006
Versión: 42.2
Mensajes: 140
Agradecimientos: 17
Agradecido 0 Veces en 0 Mensajes
Poder de Credibilidad: 13
Meta está en el buen camino
[Python] Comparar listas de palabras

Buenas:



Aquí si que Python me tumba.

Ver ejercicio.

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.

Estoy aprendiendo con Python bajo openSUSE 11.3 y este SO está increible.

Necesito ayuda, aún así me guío por este libro de Python en PDF que puedes ver por aquí.

http://marmota.act.uji.es/mtp/pdf/python.pdf

Saludo.

Última edición por Meta; 14-nov-2010 a las 02:25
Responder Citando
  #2  
Antiguo 14-nov-2010, 05:33
Avatar de zchronos
zchronos zchronos está desconectado
Miembro Senior
 
Fecha de Ingreso: 06-noviembre-2007
Ubicación: Chiclayo - Perú
Versión: 13.1
Mensajes: 826
Agradecimientos: 16
Agradecido 64 Veces en 50 Mensajes
Poder de Credibilidad: 11
zchronos está en el buen camino
Enviar un mensaje por MSN a zchronos
Saludos:

Para programar en Python yo prefiero mil veces el "Kate", te recomiendo que lo pruebes.

Sobre el ejercicio, aquí está la solución:

Código:
# 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
Claro que se le pueden agregar otras funcionalidades, como validaciones para que solo acepte cadenas, verificar si no se repiten elementos en la misma lista, etc; pero éso no pide el ejercicio.

Te recuerdo que hay "n" formas de hacerlo, ésta es la forma en que lo hago yo.

Hasta pronto.

PD.
Que bueno que hayas optado por openSUSE, si gustas luego puedes darle una leída a un pequeño tutorial que escribí hace tiempo, sobre como instalar Django y openSUSE (Django es un framework hecho en python)


__________________

"No existen los problemas, tan solo soluciones"
Linux user #460594
Responder Citando
El Siguiente Usuario Ha Dado las Gracias a zchronos Por Este Mensaje:
Meta (14-nov-2010)
  #3  
Antiguo 14-nov-2010, 05:47
Meta Meta está desconectado
Habitual
 
Fecha de Ingreso: 28-julio-2006
Versión: 42.2
Mensajes: 140
Agradecimientos: 17
Agradecido 0 Veces en 0 Mensajes
Poder de Credibilidad: 13
Meta está en el buen camino
Forma más corta de hacerlo.

Código:
cadena = raw_input('Introduce una frase: ') # Pedimos la cadena.
cadena = cadena.lower() # Convertimos a minusculas.
lista_a = cadena.split() # Creo la lista con todos los elementos de la cadena.
lista_b = [] # Lista vacía.

for i in lista_a: # Recorro la lista original.
	if i not in lista_b: # Si el elemento no esta en la otra lista...
		lista_b.append(i) #... lo agrego.

print lista_b
Gracias por tu tiempo y las sugerencias. Miraré el Kate a ver como es.
Responder Citando
  #4  
Antiguo 15-nov-2010, 01:04
jcsl jcsl está desconectado
Miembro FOROSuSE
 
Fecha de Ingreso: 18-mayo-2008
Versión: Tumbleweed
Mensajes: 2.104
Agradecimientos: 0
Agradecido 973 Veces en 587 Mensajes
Poder de Credibilidad: 13
jcsl llegará a ser famoso muy pronto
Hola.

Más corto aún:
cadena = raw_input('Introduce una frase: ')
print ', '.join (set (cadena.lower().split()))
Se podrá mejorar, pero como creo que es el primer "programa" que hago en Python me parece que está bien.

Un saludo.
Responder Citando
Respuesta

Marcadores

Etiquetas
python


(0 miembros y 1 visitantes)
 
Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los Códigos BB están Activado
Las Caritas están Activado
[IMG] está Activado
El Código HTML está Desactivado

Ir al Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problema con listas de Banshee lorelore Software 0 08-oct-2010 02:23



Síguenos en Twitter Suscríbete a nuestras noticias Acompáñanos en Facebook


La franja horaria es GMT +2. Ahora son las 04:08.
Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.

Esta página está bajo una licencia de Creative Commons, salvo que no se indique lo contrario.
Creative Commons License

Valid CSS!

Diseño por:Designed by: vbdesigns.devbdesigns.de 
Contáctenos - ForoSUSE - Archivo - Declaración de Privacidad - Arriba