El soporte de acceso a ficheros es uno de los componentes más importantes de cualquier lenguaje. En Python existe una función pre-definida denominada open que permite abrir un fichero.
handle = open( file_name, access_mode='r')
La variable file_name contiene el nombre del fichero que deseamos abrir, mientras que el parámetro acces_mode define el modo en que queremos abrir el fichero. Estos modos pueden ser r(lectura), w(escritura), a(añadir), b(binario), r+(lectura/escritura)
Para leer los contenidos del fichero tenemos varios métodos. readline() leerá una línea en cada invocación del método, mientras que readlines() leerá todo el fichero generando una lista de líneas.
file = open(filename, 'r') allLines = file.readlines() file.close() for eachLine in allLines: print eachLine,
A continuación se presenta una tabla con los métodos más utilizados sobre ficheros:
Tabla 10.5. Métodos del objeto Fichero
file.close() | cierra el fichero |
file.fileno() | devuelve un entero representando el descriptor de fichero |
file.flush() | descarga el buffer interno al fichero |
file.read (size=-1) | lee todos los bytes del fichero o los especificados en el parámetro size |
file.readline() | lee una línea del fichero incluyendo un salto de línea \n |
file.readlines() | lee todas las líneas del fichero en un lista |
file.seek(off, whence) | se mueve a una posición dentro del fichero off bytes desde lo que marque la variable whence (0= principio de fichero, 1=posición actual, 2=final de fichero) |
file.write(str) | escribe la cadena str al fichero |
file.writelines(list) | escribe la lista de cadenas al fichero |