¿Cuál es el uso de la función seek () en Python?


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.

  1. restablece la posición al byte offset dado
  2. 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.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *