Mejor respuesta
Sintaxis:
fileObject.seek(offset[, whence])
- offset : esta es la posición del puntero de lectura / escritura dentro del archivo.
- de dónde – Esto es opcional y el valor predeterminado es 0, lo que significa posicionamiento absoluto del archivo, otros valores son 1, lo que significa buscar en relación con la posición actual y 2 significa buscar en relación con el final del archivo.
Ex –
Sample.txt:
Assuming that "Sample.txt" file contains following text:
This is 1st line
This is 2nd line
This is 3rd line
This is 4th line
This is 5th line
Programa Python:
# Open a file
fo = open("Sample.txt", "r+")
print ("Name of the file: ", Sample.name)
line = fo.readlines()
print ("Read Line: \%s" \% (line))
# Again set the pointer to the beginning
fo.seek(0, 0)
line = fo.readline()
print ("Read Line: \%s" \% (line))
# Close opened file
fo.close()
Salida:
Name of the file: Sample.txt
Read Line: ["This is 1st line\n", "This is 2nd line\n", "This is 3rd line\n", "This is 4th line\n", "This is 5th line"]
Read Line: This is 1st line
Espero que esto te ayude…
Gracias 🙂
Responder
suponga que ha abierto un archivo para leer (o escribir, el concepto sigue siendo el mismo).
fh = open (“foo.txt”, “r”)
y ha utilizado f.readline () para leer el archivo. Piense en un cursor que se encuentra en una determinada posición en el archivo. por ejemplo, cuando acaba de abrir un archivo para leerlo, la posición del cursor es 0. Cuando hacemos un readline (), la posición cambia.
Intente esto:
>>> fh=open(“foo.txt”, “r”)
>>> fh.read()
>>> fh.read()
‘’
Cuando ejecuta la línea 4, nada se visualiza. Esto se debe a que después de ejecutar la línea 2, el cursor ya se ha desplazado hasta el final del archivo. no hay nada más que mostrar.
Es posible cambiar la posición del cursor usando el método seek (). En el uso más simple de seek (), use
>>> fh.seek(0)
>>> fh.read()
El contenido del archivo se mostrará nuevamente. Lo que ha sucedido aquí es que el cursor se ha movido al principio del archivo.
seek () toma 2 parámetros.
- restablece la posición al byte offset dado
- desde donde- da la posición de compensación con respecto a 0-inicio, 1-posición actual o 2-final.
El valor predeterminado del segundo parámetro es 0. El valor de compensación es obligatorio al llamar a esta función.