Revertir el contenido de un archivo - Python Programming Exercise

En este ejercicio, desarrollarás un programa en Python para "invertir" un archivo. Este ejercicio es perfecto para practicar el manejo de archivos, la manipulación de bytes y los bucles en Python. Al implementar este programa, obtendrás experiencia práctica en el manejo de operaciones de archivos, manipulación de bytes y bucles en Python. Este ejercicio no solo refuerza tu comprensión del manejo de archivos, sino que también te ayuda a desarrollar prácticas de codificación eficientes para gestionar las interacciones con el usuario. Además, este ejercicio proporciona una excelente oportunidad para explorar la versatilidad de Python en aplicaciones del mundo real. Al trabajar con el manejo de archivos, manipulación de bytes y bucles, aprenderás a estructurar tu código de manera eficiente, lo cual es una habilidad crucial en muchos escenarios de programación. Este ejercicio también te anima a pensar críticamente sobre cómo estructurar tu código para la legibilidad y el rendimiento, convirtiéndolo en una valiosa adición a tu portafolio de programación. Ya seas un principiante o un programador experimentado, este ejercicio te ayudará a profundizar tu comprensión de Python y mejorar tus habilidades para resolver problemas.

 Categoría

Administrar archivos

 Ejercicio

Revertir El Contenido De Un Archivo

 Objectivo

Desarrolla un programa Python para "invertir" un archivo: crea un nuevo archivo con el mismo nombre pero que termine en ".inv" y almacena los bytes del archivo original en orden inverso. En el archivo resultante, el primer byte será el último, el segundo byte será el penúltimo, y así sucesivamente. El byte final del archivo original debería aparecer primero en el nuevo archivo.

Solo tendrás que enviar el archivo Python, con un comentario que incluya tu nombre.

Sugerencia: Para determinar la longitud de un archivo binario (usando `BinaryReader`), puedes verificar la longitud del archivo usando `myFile.BaseStream.Length`. Además, para moverte a una posición diferente en el archivo, puedes usar `myFile.BaseStream.Seek(4, SeekOrigin.Current)`.

Las opciones de posición disponibles para la búsqueda son: `SeekOrigin.Begin`, `SeekOrigin.Current` o `SeekOrigin.End`.

 Ejemplo de ejercicio de Python

 Copiar código Python
# This program reads a file, reverses the byte order, and writes the reversed content into a new file with ".inv" extension.

def invert_file(input_filename):
    try:
        # Open the input file in binary read mode
        with open(input_filename, 'rb') as infile:
            # Read the entire content of the file
            content = infile.read()
        
        # Reverse the byte order of the content
        reversed_content = content[::-1]
        
        # Create the new file name by adding ".inv" extension
        output_filename = input_filename + ".inv"
        
        # Open the output file in binary write mode
        with open(output_filename, 'wb') as outfile:
            # Write the reversed content to the new file
            outfile.write(reversed_content)
        
        print(f"File has been successfully inverted and saved as {output_filename}.")
    except FileNotFoundError:
        print(f"The file {input_filename} does not exist.")
    except Exception as e:
        print(f"An error occurred: {e}")

# Example usage
input_file = "example.txt"  # Replace with your input file name

invert_file(input_file)

 Output

If the example.txt file contains:

Hello, this is a test file!

After running the program, the example.txt.inv file will contain:

!elfi tset a si siht ,olleH

 Comparte este ejercicio de Python

 Más Ejercicios Programación Python de Administrar archivos

¡Explora nuestro conjunto de ejercicios de programación Python! Estos ejercicios, diseñados específicamente para principiantes, te ayudarán a desarrollar una sólida comprensión de los conceptos básicos de Python. Desde variables y tipos de datos hasta estructuras de control y funciones simples, cada ejercicio está diseñado para desafiarte de manera gradual a medida que adquieres confianza en la codificación en Python.

  •  Herramienta de cifrado de archivos

    En este ejercicio, desarrollarás un programa en Python para codificar el contenido de un archivo de texto en un nuevo archivo, transformando el texto de manera que no...

  •  Contador de palabras

    En este ejercicio, desarrollarás un programa en Python para contar el número total de palabras en un archivo de texto dado. Este ejercicio es perfecto para pra...

  •  Dimensiones BMP con BinaryReader

    En este ejercicio, desarrollarás un programa en Python para leer las dimensiones (ancho y alto) de un archivo BMP utilizando un enfoque similar a BinaryReader. Este ...

  •  Convertidor de texto a HTML

    En este ejercicio, desarrollarás un programa en Python que funcione como un "convertidor de texto a HTML". Este ejercicio es perfecto para practicar el manejo ...

  •  Archivo binario inverso V2

    En este ejercicio, desarrollarás un programa en Python para "invertir" un archivo binario utilizando un "FileStream". Este ejercicio es perfecto para practicar...

  •  Dimensiones BMP, uso de FileStream

    En este ejercicio, desarrollarás un programa en Python para mostrar el ancho y la altura de un archivo de imagen BMP utilizando un FileStream. Este ejercicio e...