Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> python

Entrada/Salida de Archivos en Python: Domina las Operaciones I/O

Este capítulo cubre todas las funciones básicas de I/O disponibles en Python. Para más funciones, consulta la documentación estándar de Python.

Imprimir en Pantalla

La forma más simple de producir salida es usar la sentencia print, donde puedes pasar cero o más expresiones separadas por comas. Esta función convierte las expresiones en una cadena y escribe el resultado en la salida estándar:

#!/usr/bin/python
print("Python is really a great language,", "isn't it?")

Resultado:

Python is really a great language, isn't it?

Lectura de Entrada por Teclado

Python proporciona dos funciones integradas para leer una línea de texto desde la entrada estándar (teclado por defecto):

La Función raw_input (Python 2)

La función raw_input([prompt]) lee una línea de la entrada estándar y la retorna como cadena (eliminando el salto de línea final).

#!/usr/bin/python
str = raw_input("Enter your input: ")
print("Received input is :", str)

La Función input

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

#!/usr/bin/python
str = input("Enter your input: ")
print("Received input is :", str)

Si ingresas [x*5 for x in range(2,10,2)], el resultado será:

Received input is : [10, 20, 30, 40]

Apertura y Cierre de Archivos

Hasta ahora has leído y escrito en la entrada/salida estándar. Ahora veremos cómo usar archivos de datos reales. Python proporciona funciones y métodos básicos para manipular archivos mediante un objeto file.

La Función open

Antes de leer o escribir un archivo, debes abrirlo con la función integrada open(). Esta crea un objeto file para llamar a otros métodos asociados.

Sintaxis

file_object = open(file_name[, access_mode][, buffering])

Parámetros:

Modos de Apertura de Archivos

ModoDescripción
rAbre para solo lectura. Puntero al inicio. Modo predeterminado.
rbAbre para solo lectura en binario. Puntero al inicio.
r+Abre para lectura y escritura. Puntero al inicio.
rb+Abre para lectura y escritura en binario. Puntero al inicio.
wAbre para solo escritura. Sobrescribe si existe; crea nuevo si no.
wbAbre para solo escritura en binario. Sobrescribe si existe; crea nuevo si no.
w+Abre para lectura y escritura. Sobrescribe si existe; crea nuevo si no.
wb+Abre para lectura y escritura en binario. Sobrescribe si existe; crea nuevo si no.
aAbre para anexar. Puntero al final si existe; crea nuevo si no.
abAbre para anexar en binario. Puntero al final si existe; crea nuevo si no.
a+Abre para anexar y lectura. Puntero al final si existe; crea nuevo si no.
ab+Abre para anexar y lectura en binario. Puntero al final si existe; crea nuevo si no.

Atributos del Objeto file

Una vez abierto un archivo, puedes obtener información mediante sus atributos:

AtributoDescripción
file.closedTrue si el archivo está cerrado, False en caso contrario.
file.modeModo de acceso con el que se abrió el archivo.
file.nameNombre del archivo.
file.softspaceFalse si se requiere espacio explícito con print, True en caso contrario.

Ejemplo

#!/usr/bin/python
fo = open("foo.txt", "wb")
print("Name of the file:", fo.name)
print("Closed or not:", fo.closed)
print("Opening mode:", fo.mode)
print("Softspace flag:", fo.softspace)

El Método close()

El método close() vacía cualquier información no escrita y cierra el objeto archivo. Es buena práctica usarlo explícitamente.

fileObject.close()

Lectura y Escritura de Archivos

El objeto file proporciona métodos para facilitar la manipulación de archivos.

El Método write()

Escribe cualquier cadena en un archivo abierto. No añade salto de línea automáticamente.

fileObject.write(string)

Ejemplo

#!/usr/bin/python
fo = open("foo.txt", "wb")
fo.write("Python is a great language.\nYeah its great!!\n")
fo.close()

El Método read()

Lee una cadena desde un archivo abierto. Puede leer datos binarios además de texto.

fileObject.read([count])

El parámetro count es el número de bytes a leer. Si se omite, intenta leer lo máximo posible.

Ejemplo

#!/usr/bin/python
fo = open("foo.txt", "r+")
str = fo.read(10)
print("Read String is:", str)
fo.close()

Resultado: Read String is: Python is

Posiciones en Archivos

El método tell() indica la posición actual en el archivo. El método seek(offset[, from]) cambia la posición actual.

Ejemplo

#!/usr/bin/python
fo = open("foo.txt", "r+")
str = fo.read(10)
print("Read String is:", str)
position = fo.tell()
print("Current file position:", position)
fo.seek(0, 0)
str = fo.read(10)
print("Again read String is:", str)
fo.close()

Renombrar y Eliminar Archivos

El módulo os proporciona métodos para operaciones de procesamiento de archivos.

El Método rename()

Renombra un archivo. Sintaxis: os.rename(current_file_name, new_file_name)

Ejemplo

#!/usr/bin/python
import os
os.rename("test1.txt", "test2.txt")

El Método remove()

Elimina un archivo. Sintaxis: os.remove(file_name)

Ejemplo

#!/usr/bin/python
import os
os.remove("test2.txt")

Directorios en Python

El módulo os tiene métodos para crear, eliminar y cambiar directorios.

El Método mkdir()

Crea un directorio. Sintaxis: os.mkdir("newdir")

El Método chdir()

Cambia el directorio actual. Sintaxis: os.chdir("newdir")

El Método getcwd()

Muestra el directorio de trabajo actual. Sintaxis: os.getcwd()

El Método rmdir()

Elimina un directorio (debe estar vacío). Sintaxis: os.rmdir('dirname')

Métodos Relacionados con Archivos y Directorios

python

  1. ¿Qué es una Lima de Banco? Guía Completa de la Herramienta Esencial para Madera y Metal
  2. Dominando la entrada/salida en C: scanf() y printf() explicados
  3. Manejo de archivos en C: Dominando E/S con fopen, fprintf, fread y fseek
  4. Dominando E/S de archivos en C: Crear, abrir y gestionar archivos
  5. Entendiendo los Archivos de Cabecera en C: Tipos, Uso y Buenas Prácticas
  6. Dominando Entrada/Salida de Archivos en C++: Lectura y Escritura con fstream
  7. Entrada/Salida de archivos en C#: Lectura, escritura y gestión de streams
  8. Dominando E/S e importación de módulos en Python: Guía práctica
  9. Entrada/Salida de Archivos en Python: Dominando Operaciones de Lectura, Escritura y Gestión
  10. Dominando Operaciones de Directorios y Archivos en Python
  11. Comprobación de existencia de archivos y directorios en Python – Guía práctica