Foros del Web » Programando para Internet » Python »

usar regex para eliminar variable de una lista definida en otra

Estas en el tema de usar regex para eliminar variable de una lista definida en otra en el foro de Python en Foros del Web. Hola, Mirar tengo una lista llamemosla A y contiene lo siguiente: Código: A = ["jp?","test"] y despues tengo otra lista llamemosla B que contiene: Código: ...
  #1 (permalink)  
Antiguo 04/07/2014, 13:15
Avatar de 23r9i0  
Fecha de Ingreso: noviembre-2008
Ubicación: Catalonia
Mensajes: 203
Antigüedad: 16 años
Puntos: 33
usar regex para eliminar variable de una lista definida en otra

Hola,
Mirar tengo una lista llamemosla A y contiene lo siguiente:
Código:
A = ["jp?","test"]
y despues tengo otra lista llamemosla B que contiene:
Código:
B = ["jpeg","cd","tex","jpg","test"]
Lo que queria hacer es eliminar de B todas las coincidencias del patron que esta creado en A.

Alguna sugerencia?
  #2 (permalink)  
Antiguo 04/07/2014, 16:18
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: usar regex para eliminar variable de una lista definida en otra

Iterando sobre esas listas?

Código Python:
Ver original
  1. A = ["jp?","test"]
  2. B = ["jpeg","cd","tex","jpg","test"]
  3.  
  4. coincidencia = []
  5. for b in B:
  6.     for a in A:
  7.         # PROCESAR COSAS
  8.         # ...
  9.         if (ALGUNA_CONDICION):
  10.             coincidencia.append(b)
  11.             break
  #3 (permalink)  
Antiguo 07/07/2014, 12:27
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: usar regex para eliminar variable de una lista definida en otra

Con algo de cuidado, también podemos hacer algo como

Código python:
Ver original
  1. patron = '|'.join(A)
  2. B_filtrada = [ b for b in B if re.match(b, patron) ]

Etiquetas: gui, lista, regex, usar, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:12.