Python open() Función

Python 内置函数Funciones integradas de Python

La función open() de Python se utiliza para abrir un archivo, creando unfileobjeto, para que los métodos relacionados puedan llamarlo y realizar lecturas y escrituras.

Para más operaciones de archivos, consulte:Python Archivo I/O。

Sintaxis de la función

open(name[, mode[, buffering]])

Descripción de parámetros:

  • name: un valor de cadena que contiene el nombre del archivo al que deseas acceder.

  • mode: mode determina el modo de abrir el archivo: solo lectura, escritura, adición, etc. Todos los valores posibles se muestran en la lista completa a continuación. Este parámetro es opcional; el modo de acceso predeterminado es solo lectura (r).

  • buffering: si el valor de buffering se establece en 0, no habrá almacenamiento en búfer. Si el valor de buffering es 1, se almacenarán líneas al acceder al archivo. Si se establece un entero mayor que 1, indica el tamaño del búfer de almacenamiento. Si se toma un valor negativo, el tamaño del búfer será el predeterminado del sistema.

Lista completa de modos para abrir archivos:

ModoDescripción
tModo de texto (predeterminado).
xModo de escritura, crea un archivo nuevo; si el archivo ya existe, mostrará un error.
bModo binario.
+Abre un archivo para actualización (lectura y escritura).
UModo de nueva línea universal (no recomendado).
rAbre el archivo en modo solo lectura. El puntero del archivo se colocará al principio del archivo. Este es el modo predeterminado.
rbAbre un archivo en formato binario para solo lectura. El puntero del archivo se colocará al principio. Este es el modo predeterminado. Generalmente se usa para archivos no textuales como imágenes, etc.
r+Abre un archivo para lectura y escritura. El puntero del archivo se colocará al principio.
rb+Abre un archivo en formato binario para lectura y escritura. El puntero del archivo se colocará al principio. Generalmente se usa para archivos no textuales como imágenes, etc.
wAbre un archivo solo para escritura. Si el archivo ya existe, lo abre y comienza a editar desde el principio, es decir, el contenido original se eliminará. Si el archivo no existe, crea un archivo nuevo.
wbAbre un archivo en formato binario solo para escritura. Si el archivo ya existe, lo abre y comienza a editar desde el principio, es decir, el contenido original se eliminará. Si el archivo no existe, crea un archivo nuevo. Generalmente se usa para archivos no textuales como imágenes, etc.
w+Abre un archivo para lectura y escritura. Si el archivo ya existe, lo abre y comienza a editar desde el principio, es decir, el contenido original se eliminará. Si el archivo no existe, crea un archivo nuevo.
wb+Abre un archivo en formato binario para lectura y escritura. Si el archivo ya existe, lo abre y comienza a editar desde el principio, es decir, el contenido original se eliminará. Si el archivo no existe, crea un archivo nuevo. Generalmente se usa para archivos no textuales como imágenes, etc.
aAbre un archivo para añadir (append). Si el archivo ya existe, el puntero del archivo se colocará al final. Es decir, el contenido nuevo se escribirá después del contenido existente. Si el archivo no existe, crea un archivo nuevo para escritura.
abAbre un archivo en formato binario para añadir. Si el archivo ya existe, el puntero del archivo se colocará al final. Es decir, el contenido nuevo se escribirá después del contenido existente. Si el archivo no existe, crea un archivo nuevo para escritura.
a+Abre un archivo para lectura y escritura. Si el archivo ya existe, el puntero del archivo se colocará al final. El archivo se abrirá en modo de añadido (append). Si el archivo no existe, crea un archivo nuevo para lectura y escritura.
ab+Abre un archivo en formato binario para añadir. Si el archivo ya existe, el puntero del archivo se colocará al final. Si el archivo no existe, crea un archivo nuevo para lectura y escritura.

Métodos del objeto file

  • file.read([size]): si no se especifica size, devuelve el archivo completo; si el tamaño del archivo es >2 veces la memoria, hay problemas; f.read() devuelve "" (cadena vacía) cuando llega al final del archivo.

  • file.readline(): devuelve una línea.

  • file.readlines([size]) : devuelve una lista que contiene size líneas; si no se especifica size, devuelve todas las líneas.

  • for line in f: print line : acceder a través de un iterador.

  • f.write("hello\n"): si deseas escribir datos que no sean cadenas, primero conviértelos a cadena.

  • f.tell(): devuelve un entero que indica la posición actual del puntero del archivo (es decir, el número de bytes desde el inicio del archivo).

  • f.seek(desplazamiento, [posición inicial]): se utiliza para mover el puntero del archivo.

    • Desplazamiento: en bytes, puede ser positivo o negativo
    • Posición inicial: 0 - inicio del archivo, valor predeterminado; 1 - posición actual; 2 - final del archivo
  • f.close()Cerrar archivo

Para más contenido, consulte:Python File (archivo) Métodos

Ejemplo

Archivo de prueba test.txt, con el siguiente contenido:

EJEMPLO1
EJEMPLO2
>>>f = open('test.txt') >>> f.read() 'EJEMPLO1\nEJEMPLO2\n'

Python 内置函数Funciones integradas de Python

Otras extensiones