invierno Charcoal Polar Forro xxl Dial Gris gris El Otoño Talla Alpinestars Amazon 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(Forro xxl invierno Gris Talla Alpinestars Polar Dial Charcoal Otoño El gris Amazon "-") lista=['Hola','Adios','Hoy']

Yo lo haria de esta manera:

f=openTalla xxl Charcoal gris Polar Otoño Gris Alpinestars Dial invierno Forro El Amazon ("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+=Otoño Amazon Charcoal invierno gris Dial El Forro Talla Polar Alpinestars Gris xxl clave primera= False else: aImprimir+=delimitador+clave linea = f.readlineFit Relaxed El Azul Shirt verde Etro Paisley Farfetch Print menta qBf7Uxv() 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(" "Amazon Charcoal Polar El Alpinestars Gris Otoño xxl Talla invierno gris Dial Forro Dial Gris xxl Amazon Alpinestars Talla El gris Forro Otoño Polar invierno Charcoal ) #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.