Python - REEMPLAZAR DATOS DETERMINADOS DENTRO DE UNA CADENA

 
Vista:

REEMPLAZAR DATOS DETERMINADOS DENTRO DE UNA CADENA

Publicado por Andrea Pérez Ríos (2 intervenciones) el 16/03/2020 05:41:41
Hola, estoy aprendiendo a programar en python y estoy presentando algunas dificultades con el siguiente tema:

Tengo una lista de datos ejemplo:

list : ["hola el mon123 juan", "describe von456 el curso","su situación es mon456 estable"]

Debo eliminar todos los campos dentro de la lista que contentan mon y von , he intentado con replace pero no lo he logrado, alguien tiene una idea de como lo puedo lograr ?

Muchas gracias
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
sin imagen de perfil
Val: 765
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

REEMPLAZAR DATOS DETERMINADOS DENTRO DE UNA CADENA

Publicado por dario (185 intervenciones) el 16/03/2020 08:23:58
Hola, no te entiendo bien como debe quedar la lista al final.
Salu2.
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

REEMPLAZAR DATOS DETERMINADOS DENTRO DE UNA CADENA

Publicado por ANDREA PEREZ RIOS (2 intervenciones) el 16/03/2020 15:39:36
Hola

la lista final debe quedar

list : ["hola el juan", "describe el curso","su situación es estable"].

se deben eliminar los campos que empiecen con mon y von


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
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

REEMPLAZAR DATOS DETERMINADOS DENTRO DE UNA CADENA

Publicado por joel (901 intervenciones) el 16/03/2020 18:11:45
Hola Andrea, haber si te sirve este código:

1
2
3
4
5
6
7
8
import re
list=["hola el mon123 juan", "describe von456 el curso","su situación es mon456 estable"]
 
newList=[]
for i in list:
    newList.append(" ".join([j for j in i.split(" ") if not re.search("mon|von", j)]))
 
print(newList) # ['hola el juan', 'describe el curso', 'su situación es estable']
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
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

REEMPLAZAR DATOS DETERMINADOS DENTRO DE UNA CADENA

Publicado por tincopasan (1082 intervenciones) el 16/03/2020 18:44:43
Hola:
si usas comprensión de listas con una sola línea, sin usar re y usando la función replace(que es la pedida )también se puede.
1
2
nueva = [x.replace("mon","") .replace("von","") for x in lista]
print(nueva)

Saludos
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

REEMPLAZAR DATOS DETERMINADOS DENTRO DE UNA CADENA

Publicado por joel (901 intervenciones) el 16/03/2020 18:56:14
Hola tincopasan, creo que tu código solo quita el texto, pero no la palabra...

de esto:
1
"hola el mon123 juan"

tu código pasa a:
1
"hola el 123 juan"

en vez de esto:
1
"hola el juan"
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
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

REEMPLAZAR DATOS DETERMINADOS DENTRO DE UNA CADENA

Publicado por tincopasan (1082 intervenciones) el 16/03/2020 21:05:46
Hola:
si recién veo que los números estan concatenados en lo que es la "palabra"!
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