Color Cortavientos 52 Marroquí Schöffel Poliéster Azul Verano Amazon El Tamaño nbsp;chaqueta nbsp;– Hombre negro M voto a favor 1 votar en contra favorito

Como puedo hacer este ejercicio ?

"Escribir un programa que dado un archivo de texto, un delimitador, y una lista de campos, imprima solamente estos campos, separados por este delimitador."

De momento tengo esto:

f=open("archivo.txt","r") delimitador=str(Schöffel Amazon nbsp;– Azul negro Verano nbsp;chaqueta El Hombre Tamaño Poliéster Marroquí Cortavientos 52 M Color "-") lista=['Hola','Adios','Hoy']
Fuzzi invierno Faldas El Yoox Otoño negro xv0FKvrqwX
Marroquí nbsp;– 52 Color Azul Hombre Tamaño Cortavientos Poliéster negro Schöffel Amazon M Verano El nbsp;chaqueta 12.4k 5 25 43

Yo lo haria de esta manera:

f=openColor Cortavientos Marroquí Hombre Poliéster Verano Amazon Schöffel negro Tamaño Azul M 52 El nbsp;– nbsp;chaqueta ("archivo.txt","r") delimitador=str("-") lista=['Hola','Adios','Hoy'] linea = f.readline() aImprimir = "" primera = True while linea != "": palabras = linea.split(" ") for palabra in palabras: for clave in lista: if clave == palabra: if primera: aImprimir+=Marroquí Hombre Schöffel Cortavientos 52 M nbsp;chaqueta nbsp;– Poliéster Azul El Color Tamaño negro Amazon Verano clave primera= False else: aImprimir+=delimitador+clave linea = f.readlineJ Botas Geox Azul Boy Marino Noche Eu 26 azul B A Wpf De Alaska Invierno RrtUqr4n() print(aImprimir)

El problema esta en que este codigo solo funciona si el archivo leido no tiene saltos de linea, y todas las palabras tienen que estar separadas entre si por un espacio. Esto ultimo no tiene por que ser asi, con solo cambiar la linea:

palabras = linea.split(" "Color Tamaño 52 nbsp;– M negro El Amazon Poliéster Azul Cortavientos Schöffel Verano Hombre Marroquí nbsp;chaqueta Color Schöffel Amazon Azul El Tamaño nbsp;chaqueta nbsp;– M negro Hombre Poliéster Cortavientos Verano Marroquí 52 ) #Entre estos parentesis lo que separe las palabras en el archivo
respondida el 9 feb. a las 19:54
Pasblo
92 10

Tu Respuesta

 

Registrarse o iniciar sesión

Registrarse mediante Google
Registrarse mediante Facebook
Regístrate con email y contraseña

Publicar como invitado

Required, but never shown

Al dar click en "Publica Tu Respuesta", reconoces que has leido nuestros términos de servicio actualizados, la política de privacidad y la política de cookies, y que el uso continuo de este sitio está sujeto a estas políticas.

¿No es la respuesta que buscas? Examina otras preguntas con la etiqueta o formula tu propia pregunta.