English English

Operaciones de archivo (I/O) en Python

Estas son todas las funciones básicas de E/S que se pueden utilizar en Python. Por ejemplo, puede leer y escribir archivos con estos comandos. Para más funciones, consulte la documentación estándar de Python.

Visualización en la pantalla

La forma más sencilla de producir resultados es utilizando la sentencia de impresión, en la que se pueden pasar cero o más expresiones separadas por comas. Esta función convierte las expresiones que se pasan a una cadena y escribe el resultado en una salida estándar como se indica a continuación:

#!/usr/bin/python

print "Python es realmente un gran idioma,", "¿no es así?"

Lectura desde teclado - input Función

La función input([prompt]) es equivalente a raw_input, excepto que asume que la entrada es una expresión Python válida y le devuelve el resultado evaluado.

#!/usr/bin/python

str = input("Enter your input: ");
print "Received input is : ", str

Apertura y cierre de archivos

Ahora veremos cómo usar los archivos de datos reales. Python proporciona funciones básicas y métodos necesarios para manipular archivos por defecto. Puede realizar la mayor parte de la manipulación de archivos utilizando un objeto de archivo.

La función open

Antes de que puedas leer o escribir un archivo, tienes que abrirlo usando la función open() incorporada de Python. Esta función crea un objeto de archivo, que se utilizaría para llamar a otros métodos de soporte asociados a él.

file object = open(file_name [, access_mode][, buffering])
  • file_name − El argumento file_name es un valor de cadena que contiene el nombre del archivo al que desea acceder.

  • access_mode − El access_mode determina el modo en el que el archivo tiene que ser abierto, es decir, leer, escribir, añadir, etc. A continuación, en la tabla, se ofrece una lista completa de los posibles valores. Este es un parámetro opcional y se lee el modo de acceso al archivo por defecto (r).

  • buffering − Si el valor de buffering se ajusta a 0, no se produce ningún buffering. Si el valor de almacenamiento en memoria intermedia es 1, el almacenamiento en memoria intermedia de líneas se realiza mientras se accede a un archivo. Si especifica el valor de memoria intermedia como un número entero mayor que 1, la acción de memoria intermedia se realiza con el tamaño de memoria intermedia indicado. Si es negativo, el tamaño del búfer es el valor predeterminado del sistema (comportamiento predeterminado).

Lista de los diferentes modos de abrir un archivo:

r

Abre un archivo sólo para lectura. El puntero del archivo se coloca al principio del archivo. Este es el modo por defecto.

rb

Abre un archivo para leerlo sólo en formato binario. El puntero del archivo se coloca al principio del archivo. Este es el modo por defecto.

r+

Abre un archivo tanto para leer como para escribir. El puntero del archivo situado al principio del archivo.

rb+

Abre un archivo tanto para leer como para escribir en formato binario. El puntero del archivo situado al principio del archivo.

w

Abre un archivo sólo para escribir. Sobrescribe el archivo si existe. Si el archivo no existe, crea un nuevo archivo para escribir.

wb

Abre un archivo para escribir sólo en formato binario. Sobrescribe el archivo si existe. Si el archivo no existe, crea un nuevo archivo para escribir.

w+

Abre un archivo tanto para escribir como para leer. Sobrescribe el archivo existente si existe. Si el archivo no existe, crea un nuevo archivo para leer y escribir.

wb+

Abre un archivo para escritura y lectura en formato binario. Sobrescribe el archivo existente si existe. Si el archivo no existe, crea un nuevo archivo para leer y escribir.

a

Abre un archivo para agregarlo. El puntero del archivo se encuentra al final del archivo, si existe. Es decir, el archivo se encuentra en modo append. Si el archivo no existe, crea un nuevo archivo para escribir.

ab

Abre un archivo para añadir en formato binario. El puntero del archivo se encuentra al final del archivo, si existe. Es decir, el archivo se encuentra en modo append. Si el archivo no existe, crea un nuevo archivo para escribir.

a+

Abre un archivo tanto para añadir como para leer. El puntero del archivo se encuentra al final del archivo, si existe. El archivo se abre en modo append. Si el archivo no existe, crea un nuevo archivo para leer y escribir.

ab+

Abre un archivo para adjuntar y leer en formato binario. El puntero del archivo se encuentra al final del archivo, si existe. El archivo se abre en modo append. Si el archivo no existe, crea un nuevo archivo para leer y escribir.

Atributos de objeto file

Cuando se abre un archivo y se tiene un objeto de archivo, se puede obtener diversa información relacionada con ese archivo.

Una lista de todos los atributos relacionados con el objeto de archivo:

file.closed

Devuelve true si el archivo está cerrado, false en otro.

file.mode

Devuelve el modo de acceso con el que se abrió el archivo.

file.name

Devuelve el nombre del fichero.

close() Método

El método close() de un objeto de archivo elimina cualquier información no escrita y cierra el objeto de archivo, después de lo cual no se puede escribir más.

Python cierra automáticamente un archivo cuando el objeto de referencia de un archivo se reasigna a otro archivo. Es una buena práctica usar el método close() para cerrar un archivo.

fileObject.close();

The write() Method

El método write() escribe cualquier cadena en un archivo abierto. Es importante tener en cuenta que las cadenas Python pueden tener datos binarios y no sólo texto.

El método write() no añade un nuevo carácter de línea ('\n') al final de la cadena. Por lo tanto, se debe añadir un carácter de salto de línea al final de la cadena de salida:

fileObject.write(string);

Usado en un ejemplo:

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
fo.write( "Python es un gran idioma.\nSi, es genial!!!!!\n");

# Close opend file
fo.close()

read() Método

El método read() lee una cadena de un archivo abierto. Es importante tener en cuenta que las cadenas Python pueden tener datos binarios, además de datos de texto.

fileObject.read([count]);

Aquí, el parámetro pasado es el número de octetos que se leerán del archivo abierto. Este método comienza leyendo desde el principio del archivo y si falta el conteo, entonces intenta leer tanto como sea posible, tal vez hasta el final del archivo.

Usado en un ejemplo:

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "r+")
str = fo.read(10);
print "Read String is : ", str
# Close opend file
fo.close()

 

Para obtener más información sobre las operaciones de archivos de I/O, consulte la documentación de Python en el sitio web oficial de Python:

https://docs.python.org/

Usamos cookies en nuestro sitio web. Algunas de ellas son esenciales para el funcionamiento del sitio, mientras que otras nos ayudan a mejorar el sitio web y también la experiencia del usuario (cookies de rastreo). Puedes decidir por ti mismo si quieres permitir el uso de las cookies. Ten en cuenta que si las rechazas, puede que no puedas usar todas las funcionalidades del sitio web.