Sobes.tech
Middle

Šta su StringIO i BytesIO u Pythonu i zašto se koriste?

sobes.tech АИ

Одговор од АИ

StringIO i BytesIO su klase iz modula io u Pythonu, koje pružaju objekte slične fajlovima za rad sa podacima u memoriji.

  • StringIO radi sa tekstualnim podacima (nizovima), omogućavajući čitanje i pisanje nizova kao u fajlu.
  • BytesIO je namenjen za rad sa binarnim podacima (bajtovima).

Često se koriste za testiranje funkcija koje očekuju objekat fajla, bez potrebe za pravim fajlovima na disku. Takođe su korisni za obradu podataka u memoriji, na primer, pri radu sa tokovima podataka ili serializaciji.

Primer korišćenja StringIO:

from io import StringIO

s = StringIO()
s.write('Zdravo, svet!')
s.seek(0)
print(s.read())  # Ispisaće: Zdravo, svet!

Primer sa BytesIO:

from io import BytesIO

b = BytesIO()
b.write(b'\x00\x01\x02')
b.seek(0)
print(b.read())  # Ispisaće: b'\x00\x01\x02'