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

Python - E/S de archivos

Página anteriorPágina siguiente

Este capítulo cubre todas las funciones básicas de E/S disponibles en Python. Para obtener más funciones, consulte la documentación estándar de Python.

Impresión en la pantalla

La forma más sencilla de producir una salida es usar print declaración donde puede pasar cero o más expresiones separadas por comas. Esta función convierte las expresiones que pasa en una cadena y escribe el resultado en la salida estándar de la siguiente manera −

Demostración en vivo
#!/usr/bin/python

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

Esto produce el siguiente resultado en su pantalla estándar −

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

Lectura de entrada de teclado

Python proporciona dos funciones integradas para leer una línea de texto desde la entrada estándar, que por defecto proviene del teclado. Estas funciones son −

La entrada_sin procesar Función

La entrada_sin procesar([mensaje]) La función lee una línea de la entrada estándar y la devuelve como una cadena (eliminando la nueva línea final).

#!/usr/bin/python

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

Esto le pide que ingrese cualquier cadena y mostraría la misma cadena en la pantalla. Cuando escribí "¡Hola Python!", su salida es así −

Enter your input: Hello Python
Received input is :  Hello Python

La entrada Función

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

#!/usr/bin/python

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

Esto produciría el siguiente resultado contra la entrada ingresada:

Enter your input: [x*5 for x in range(2,10,2)]
Recieved input is :  [10, 20, 30, 40]

Apertura y cierre de archivos

Hasta ahora, ha estado leyendo y escribiendo en la entrada y salida estándar. Ahora, veremos cómo usar los archivos de datos reales.

Python proporciona funciones y métodos básicos necesarios para manipular archivos de forma predeterminada. Puede realizar la mayor parte de la manipulación de archivos utilizando un archivo objeto.

El abierto Función

Antes de que pueda leer o escribir un archivo, debe abrirlo usando el open() integrado de Python. función. Esta función crea un archivo objeto, que se utilizaría para llamar a otros métodos de soporte asociados con él.

Sintaxis

file object = open(file_name [, access_mode][, buffering])

Aquí están los detalles de los parámetros −

Aquí hay una lista de los diferentes modos de abrir un archivo −

Sr.No. Modos y descripción
1

r

Abre un archivo de solo lectura. El puntero de archivo se coloca al principio del archivo. Este es el modo predeterminado.

2

rb

Abre un archivo para lectura solo en formato binario. El puntero de archivo se coloca al principio del archivo. Este es el modo predeterminado.

3

r+

Abre un archivo para lectura y escritura. El puntero de archivo colocado al principio del archivo.

4

rb+

Abre un archivo para lectura y escritura en formato binario. El puntero de archivo colocado al principio del archivo.

5

w

Abre un archivo solo para escritura. Sobrescribe el archivo si existe. Si el archivo no existe, crea un nuevo archivo para escribir.

6

wb

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

7

w+

Abre un archivo para escritura y lectura. Sobrescribe el archivo existente si el archivo existe. Si el archivo no existe, crea un nuevo archivo para lectura y escritura.

8

wb+

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

9

un

Abre un archivo para agregar. El puntero del archivo se encuentra al final del archivo, si el archivo existe. Es decir, el archivo está en el modo de adición. Si el archivo no existe, crea un nuevo archivo para escribir.

10

ab

Abre un archivo para agregar en formato binario. El puntero del archivo se encuentra al final del archivo, si el archivo existe. Es decir, el archivo está en el modo de adición. Si el archivo no existe, crea un nuevo archivo para escribir.

11

a+

Abre un archivo para agregar y leer. El puntero del archivo se encuentra al final del archivo, si el archivo existe. El archivo se abre en el modo de adición. Si el archivo no existe, crea un nuevo archivo para lectura y escritura.

12

ab+

Abre un archivo para agregar y leer en formato binario. El puntero del archivo se encuentra al final del archivo, si el archivo existe. El archivo se abre en el modo de adición. Si el archivo no existe, crea un nuevo archivo para lectura y escritura.

El archivo Atributos de objetos

Una vez que se abre un archivo y tiene un archivo objeto, puede obtener diversa información relacionada con ese archivo.

Aquí hay una lista de todos los atributos relacionados con el objeto de archivo −

Sr.No. Atributo y descripción
1

archivo.cerrado

Devuelve verdadero si el archivo está cerrado, falso de lo contrario.

2

archivo.modo

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

3

archivo.nombre

Devuelve el nombre del archivo.

4

archivo.softspace

Devuelve falso si se requiere espacio explícitamente con la impresión, verdadero de lo contrario.

Ejemplo

Demostración en vivo
#!/usr/bin/python

# Open a file
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

Esto produce el siguiente resultado −

Name of the file:  foo.txt
Closed or not :  False
Opening mode :  wb
Softspace flag :  0

El cerrar() Método

El método close() de un archivo El objeto vacía 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.

Sintaxis

fileObject.close()

Ejemplo

Demostración en vivo
#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
print "Name of the file: ", fo.name

# Close opend file
fo.close()

Esto produce el siguiente resultado −

Name of the file:  foo.txt

Lectura y escritura de archivos

El archivo object proporciona un conjunto de métodos de acceso para hacernos la vida más fácil. Veríamos cómo usar read() y escribir() métodos para leer y escribir archivos.

La escribir() Método

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

El método write() no agrega un carácter de nueva línea ('\n') al final de la cadena −

Sintaxis

fileObject.write(string)

Aquí, el parámetro pasado es el contenido que se escribirá en el archivo abierto.

Ejemplo

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
fo.write( "Python is a great language.\nYeah its great!!\n")

# Close opend file
fo.close()

El método anterior crearía foo.txt y escribiría contenido dado en ese archivo y finalmente cerraría ese archivo. Si abriera este archivo, tendría el siguiente contenido.

Python is a great language.
Yeah its great!!

La leer() Método

El leer() El método lee una cadena de un archivo abierto. Es importante tener en cuenta que las cadenas de Python pueden tener datos binarios. aparte de los datos de texto.

Sintaxis

fileObject.read([count])

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

Ejemplo

Tomemos un archivo foo.txt , que creamos arriba.

#!/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()

Esto produce el siguiente resultado −

Read String is :  Python is

Posiciones de archivos

El decir() El método le dice la posición actual dentro del archivo; en otras palabras, la siguiente lectura o escritura se producirá a esa cantidad de bytes desde el principio del archivo.

La búsqueda(desplazamiento[, desde]) El método cambia la posición actual del archivo. El desplazamiento El argumento indica el número de bytes que se van a mover. El de El argumento especifica la posición de referencia desde donde se moverán los bytes.

Si de se establece en 0, significa usar el principio del archivo como posición de referencia y 1 significa usar la posición actual como posición de referencia y si se establece en 2, entonces el final del archivo se tomará como posición de referencia.

Ejemplo

Tomemos un archivo foo.txt , que creamos arriba.

#!/usr/bin/python

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

# Check current position
position = fo.tell()
print "Current file position : ", position

# Reposition pointer at the beginning once again
position = fo.seek(0, 0);
str = fo.read(10)
print "Again read String is : ", str
# Close opend file
fo.close()

Esto produce el siguiente resultado −

Read String is :  Python is
Current file position :  10
Again read String is :  Python is

Renombrar y eliminar archivos

Python sistema operativo El módulo proporciona métodos que lo ayudan a realizar operaciones de procesamiento de archivos, como cambiar el nombre y eliminar archivos.

Para usar este módulo, primero debe importarlo y luego puede llamar a cualquier función relacionada.

El método renombrar()

El renombrar() El método toma dos argumentos, el nombre de archivo actual y el nuevo nombre de archivo.

Sintaxis

os.rename(current_file_name, new_file_name)

Ejemplo

El siguiente es el ejemplo para cambiar el nombre de un archivo existente test1.txt

#!/usr/bin/python
import os

# Rename a file from test1.txt to test2.txt
os.rename( "test1.txt", "test2.txt" )

El quitar() Método

Puede usar remove() método para eliminar archivos proporcionando el nombre del archivo que se eliminará como argumento.

Sintaxis

os.remove(file_name)

Ejemplo

El siguiente es el ejemplo para eliminar un archivo existente test2.txt

#!/usr/bin/python
import os

# Delete file test2.txt
os.remove("text2.txt")

Directorios en Python

Todos los archivos están contenidos en varios directorios, y Python tampoco tiene problemas para manejarlos. El os El módulo tiene varios métodos que lo ayudan a crear, eliminar y cambiar directorios.

El mkdir() Método

Puede usar mkdir() método del os módulo para crear directorios en el directorio actual. Debe proporcionar un argumento a este método que contenga el nombre del directorio que se creará.

Sintaxis

os.mkdir("newdir")

Ejemplo

El siguiente es el ejemplo para crear un directorio prueba en el directorio actual −

#!/usr/bin/python
import os

# Create a directory "test"
os.mkdir("test")

El chdir() Método

Puede usar chdir() método para cambiar el directorio actual. El método chdir() toma un argumento, que es el nombre del directorio que desea convertir en el directorio actual.

Sintaxis

os.chdir("newdir")

Ejemplo

El siguiente es el ejemplo para ir al directorio "/home/newdir" −

#!/usr/bin/python
import os

# Changing a directory to "/home/newdir"
os.chdir("/home/newdir")

El getcwd() Método

El getcwd() El método muestra el directorio de trabajo actual.

Sintaxis

os.getcwd()

Ejemplo

El siguiente es el ejemplo para dar el directorio actual −

#!/usr/bin/python
import os

# This would give location of the current directory
os.getcwd()

El rmdir() Método

El rmdir() El método elimina el directorio, que se pasa como argumento en el método.

Antes de eliminar un directorio, se debe eliminar todo su contenido.

Sintaxis

os.rmdir('dirname')

Ejemplo

El siguiente es el ejemplo para eliminar el directorio "/tmp/test". Es necesario proporcionar un nombre completo del directorio, de lo contrario, buscaría ese directorio en el directorio actual.

#!/usr/bin/python
import os

# This would  remove "/tmp/test"  directory.
os.rmdir( "/tmp/test"  )

Métodos relacionados con archivos y directorios

Hay tres fuentes importantes, que proporcionan una amplia gama de métodos de utilidad para manejar y manipular archivos y directorios en los sistemas operativos Windows y Unix. Son los siguientes −


python

  1. C Entrada Salida (E/S)
  2. Manejo de archivos C
  3. Entrada, salida e importación de Python
  4. E/S de archivo de Python
  5. Administración de archivos y directorios de Python
  6. Python comprueba si el archivo existe | Cómo comprobar si existe un directorio en Python
  7. C - E/S de archivo
  8. C - Archivos de encabezado
  9. Archivos y flujos de C++
  10. C# - E/S de archivos
  11. ¿Qué es un archivo Mill?