Hva er bruken av seek () -funksjonen i Python?


Beste svaret

Syntaks:

fileObject.seek(offset[, whence])

  • forskyvning – Dette er posisjonen til lese / skrivepekeren i filen.
  • hvorfra – Dette er valgfritt og er som standard 0 som betyr absolutt filposisjonering, andre verdier er 1 som betyr søk i forhold til gjeldende posisjon og 2 betyr søk i forhold til filens slutt.

Ex

Eksempel.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

Python-program:

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

Utgang:

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

Håper dette hjelper deg …

Takk 🙂

Svar

antar at du har åpnet en fil å lese (eller skrive, konseptet forblir det samme).

fh = open (“foo.txt”, “r”)

og du har brukt f.readline () til å lese filen. Tenk på en markør som er på en bestemt posisjon i filen. for eksempel når du nettopp har åpnet en fil som skal leses, er markørposisjonen 0. Når vi gjør en readline (), endres posisjonen.

Prøv dette:

>>> fh=open(“foo.txt”, “r”)

>>> fh.read()

>>> fh.read()

‘’

Når du kjører line4, ingenting er vist. Dette skyldes at markøren allerede har kjørt til slutten av filen etter at du har kjørt linje 2. det er ikke noe mer å vise.

Det er mulig å endre markørens posisjon ved å bruke seek () -metoden. I den enkleste bruken av seek (), bruk

>>> fh.seek(0)

>>> fh.read()

Innholdet i filen vises igjen. Det som har skjedd her er at markøren er flyttet til begynnelsen av filen.

seek () tar to parametere.

  1. tilbakestill posisjon til gitt byteforskyvning
  2. hvorfra- gir offsetposisjonen med hensyn til 0-start, 1-gjeldende posisjon eller 2-end.

standardverdien for andre parameter er 0. Offset-verdi er obligatorisk mens du kaller denne funksjonen.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *