Python - listas (comparar entre dos listas)

 
Vista:
sin imagen de perfil
Val: 34
Ha disminuido su posición en 4 puestos en Python (en relación al último mes)
Gráfica de Python

listas (comparar entre dos listas)

Publicado por diego (19 intervenciones) el 21/12/2016 19:39:23
Hola de nuevo sigo con esto de python, tengo una duda cómo hacer para comparar dos listas y que me diga si al menos hay un elemento coincidente?

1
2
3
4
5
6
lista1=["paco","pepe","luis"]
lista2=["diego","mari","luis"]
if lista1==lista2:
         print("son iguales")
else :
         print("son distintas")

Con esto consigo que me diga si son exactamente iguales.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kip
Val: 1.120
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

listas (comparar entre dos listas)

Publicado por kip (257 intervenciones) el 21/12/2016 22:02:02
Hola, debes recorrer alguna de las listas y verificar si cada elemento de esta existe en la otra lista, algo asi:

1
2
3
4
5
6
7
8
9
10
11
12
13
lista1=["paco","pepe","luis"]
lista2=["diego","mari","luis"]
comparacion = []
 
for item in lista1:
  if item in lista2:
    comparacion.append(item)
 
if len(comparacion) > 0:
  print 'Ambas listas contienen estos elementos'
  for item in comparacion: print '%s' % item
else:
  print 'No existe ningun elemento igual en las listas'

De una forma mas rapida:

1
2
3
4
5
6
7
8
lista1=["paco","pepe","luis"]
lista2=["diego","mari","luis"]
comparacion = [item for item in lista1 if item in lista2]
if len(comparacion) > 0:
  print 'Ambas listas contienen estos elementos '
  for item in comparacion: print '%s' % item
else:
  print 'No existe ningun elemento igual en las listas'

Puedes probar de esta forma.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil

listas (comparar entre dos listas)

Publicado por FRANCISCO (1 intervención) el 22/12/2016 03:16:43
utiliza un for y ve comparando cada posicion de la lista con la otra
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

listas (comparar entre dos listas)

Publicado por F (1 intervención) el 03/01/2021 15:08:19
¿Cómo se hace eso exactamente? Es justo lo que necesito.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.475
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

listas (comparar entre dos listas)

Publicado por joel (901 intervenciones) el 04/01/2021 08:30:35
Seria algo así:

1
2
3
4
5
6
7
8
9
10
11
12
13
def iguales(lista1, lista2):
    for i in range(len(lista1)):
        if lista1[i]!=lista2[i]:
            return False
    return True
 
lista1=["paco","pepe","luis"]
lista2=["diego","mari","luis"]
 
if (iguales(lista1, lista2)):
    print("Son iguales")
else:
    print("No son igulaes")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

listas (comparar entre dos listas)

Publicado por tincopasan (1082 intervenciones) el 22/12/2016 16:11:28
¿para qué tanto código? usas set(conjuntos) y mostrás las igualdades
1
2
3
4
5
6
7
8
9
lista1=set(["paco","pepe","luis"])
lista2=set(["diego","mari","luis"])
 
final= lista1 & lista2
if len(final) > 0 :
    print("hay {} elementos coincidentes".format(len(final)))
    print(final)
else:
    print("no hay repeticiones")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 34
Ha disminuido su posición en 4 puestos en Python (en relación al último mes)
Gráfica de Python

listas (comparar entre dos listas)

Publicado por diego (19 intervenciones) el 22/12/2016 16:27:05
guau, ni sabia que existía set,
gracias a todos por responder muy amables
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

listas (comparar entre dos listas)

Publicado por paolo (2 intervenciones) el 02/02/2020 03:31:14
utilizar conjuntos en python es excelente, pero solo sirve para listas cuyos datos no se repiten.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

listas (comparar entre dos listas)

Publicado por LG (1 intervención) el 14/10/2020 18:00:02
GRACIAS AMIGO!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

listas (comparar entre dos listas)

Publicado por yuriel (2 intervenciones) el 06/12/2020 01:00:15
muy buen aporte felicidades!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Cristhian Martínez

listas (comparar entre dos listas)

Publicado por Cristhian Martínez (2 intervenciones) el 14/11/2021 17:32:44
Hola disculpa como funciona el "&"?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

listas (comparar entre dos listas)

Publicado por Marc (1 intervención) el 31/10/2019 16:55:46
Hola!

He estado intentando aplicar lo que habéis dicho todos a mi problema.
Lo que a mi me sucede es que necesito comparar los elementos de una lista con el contenido de una columna. Si existe coincidencia, quiero que la columna se rellene con EL NOMBRE DE LA LISTA.

1
2
deporte=["futbolista","waterpolista","patinador"]
meditacion=["Yoga","TaiChi"]

Luego tengo una columna que tiene mucha información (informacion). Yo quiero buscar en esa columna, en cada celda, si aparecen las palabras de alguna de las 2 listas. Si hay coincicendia, quiero que en una tercera columna [AFICIÓN] aparezca "deporte" o "meditacion". Si no hay coincidencia, NaN.

Me quedo bloqueado al principio. Esto es lo que he intentado sin éxito.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
deporte=["futbolista","waterpolista","patinador"]
meditacion=["Yoga","TaiChi"]
 
descript_split=df["informacion"].str.split()
comparacion=[]
 
for item in lista_periodista:
    if item in descript_split:
        comparacion.append(item)
if len(comparacion)>0:
    print("Coincidencia")
    for item in comparacion: print("%") % item
else:
    print ("NO")

Y ni así, en esta primera parte, lo consigo.

¿Alguna idea?

Muchas gracias!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar