Daftar Referensi Python

seek() memindahkan posisi baca/tulis sebuah stream ke offset tertentu.

Sintaks

posisi = file.seek(offset, whence=0)

Parameter

Parameter Wajib? Keterangan
offset Ya Jarak perpindahan
whence Tidak 0 dari awal, 1 dari posisi kini, 2 dari akhir

Nilai balik: posisi absolut baru.

Contoh

from io import StringIO

file = StringIO("ABCDEFGHIJ")
file.seek(4)
print(file.read(3))

Coba di IDE

Output:

EFG

Contoh Lainnya

Kembali ke awal

from io import StringIO

file = StringIO("Python")
print(file.read(2))
file.seek(0)
print(file.read())

Coba di IDE

Output:

Py
Python

Menghitung dari akhir pada stream biner

from io import BytesIO

file = BytesIO(b"ABCDEFGHIJ")
file.seek(-3, 2)
print(file.read())

Coba di IDE

Output:

b'HIJ'

Menimpa data dari posisi tertentu

from io import BytesIO

file = BytesIO(b"ABCDEF")
file.seek(2)
file.write(b"XY")
print(file.getvalue())

Coba di IDE

Output:

b'ABXYEF'

Kesalahan Umum

  • Offset negatif dari awal menghasilkan error.
  • Pada file teks, perpindahan relatif selain nilai tertentu dibatasi.
  • Stream yang tidak seekable dapat menghasilkan OSError.

Pelajari Lebih Lanjut