Python Stringio

Python Stringio

En av de essensielle egenskapene til Python er dens evne til å håndtere “I/O”Operasjoner effektivt. “Stringio”Er en modul i Pythons standardbibliotek som lar deg manipulere strenger som om de var filer. Det gir et fillignende grensesnitt som lar deg lese og skrive strenger i minnet. Dette betyr at du kan bruke alle metodene og funksjonene du kan bruke på et filobjekt, for eksempel "lese ()", "skriv ()" og "Seek ()".

I denne Python-bloggen gir vi en dyptgående guide til Python “Stringio”Modul ved å bruke mange eksempler.

Merk: I den siste versjonen av Python, "Stringio”Modul eksisterer ikke, så for å bruke den, må den være“importert" fra "io”Modul som“io.Stringio”.

Hvordan importere Python “Stringio” -modulen?

Stringio”Objekter opprettes ved hjelp av“ Stringio ”-klassen, som kan importeres ved hjelp av følgende kode:

Fra IO Import Stringio

“Stringio” -metoder

Stringio”Modul gir flere metoder for å utføre visse oppgaver. Her er noen metoder med eksempler.

“Skriv ()” -metode

"Skrive ()" -metoden brukes til å skrive en streng til "Stringio”Objekt. Den aksepterer en streng som et argument/parameter og skriver den til slutten av bufferen.

Eksempel

Her er en eksempelkode:

Fra IO Import Stringio
MyFile = Stringio ()
myfile.Skriv ("Python")
myfile.skrive(" ")
myfile.Skriv ("Guide")
trykk (MyFile.getValue ())


I koden ovenfor:

    • Stringio”Klasse importeres via“io”Modul.
    • Forekomsten av “Stringio”Er opprettet og tildelt variabelen”myfile”.
    • Og så "skrive()”Metode brukes til å skrive de spesifiserte strengene til“ Stringio ”-objektet.
    • Til slutt "getValue ()”Metode brukes til å returnere en strengrepresentasjon av det fillignende objektet.

Produksjon


Ovennevnte utfall viser at strengverdiene er skrevet til en "Stringio”Objekt på riktig måte.

“Les ()” -metode

lese()”Metode brukes til å lese et visst antall tegn fra“ Stringio ”-objektet. Hele strengen leses hvis det ikke er gitt noe argument/parameter.

Eksempel

La oss oversikt Følgende eksempelkode som demonstrerer bruken:

Fra IO Import Stringio
verdi = Stringio ("Python Guide")
trykk (verdi.lese())


I ovennevnte kodebit:

    • Stringio ()”Brukes til å lage et“ Stringio ”-objekt med strengen”Python Guide”Som det første innholdet.
    • Nå, bruk “lese()”Metode for å returnere hele innholdet i objektet som en streng.

Produksjon


I output ovenfor, leser "Read ()" -funksjonen innholdet fra "Stringio" -objektet.

“Readline ()” -metode

Denne metoden brukes til å lese en enkelt/bestemt linje fra “Stringio” -objektet. Hvis ingen parameter leveres, leser den neste linje.

Eksempel

Tenk på følgende eksempelkode:

Fra IO Import Stringio
input = stringio ("Python guide \ nlinux guide")
trykk (input.readline ())


I henhold til koden ovenfor:

    • “Stringio” -objektet er opprettet med en flerlinjestrengverdi på “Python Guide \ Nlinux Guide”. Det spesielle “\ n”Karakter illustrerer en ny linje, så strengen har to tekstlinjer.
    • Et objekt som inneholder en fillignende struktur blir lest og returnert ved hjelp av “Readline ()”Metode.

Produksjon


Ovennevnte utfall innebærer at "Readline ()" -funksjonen leser den første linjen fra “Stringio” -objektet.

“GetValue ()” -metode

getValue() ”Metode returnerer hele innholdet i“ Stringio ”-objektet som en streng.

Eksempel

Her er en eksempelkode for å komme i gang:

Fra IO Import Stringio
MyFile = Stringio ()
myfile.Skriv ("Python Guide")
trykk (MyFile.getValue ())


I kodeblokken ovenfor:

    • skrive()”Metoden brukes til å skrive den oppgitte strengen til“ Stringio ”-objektet.
    • getValue ()”Metode brukes til å få alt“ Stringio ”-innholdet og returnerer det som en streng.

Produksjon


Ovennevnte utfall verifiserer at hele strenginnholdet er returnert fra Stringio -objektet.

“Avkortet ()” -metode

avkortet ()”Metode for“ Stringio ”-modulen brukes til å endre størrelsen på størrelsen på filstrømmen. Etter den medfølgende indeksen blir filen droppet og lagret.

Eksempel

Gå gjennom kodelinjene under:

Fra IO Import Stringio
fil = stringio ()
fil.Skriv ('Python Guide')
Skriv ut (fil.getValue ())
fil.Søk (6)
fil.avkortet ()
Skriv ut (fil.getValue ())


I ovennevnte kodebit:

    • På samme måte "Stringio ()”Oppretter en forekomst av Stringio -klassen og tildeler den til variabelen som heter“fil”.
    • fil.skrive()”Metode skriver strengen til Fil Stringio -objektet.
    • getValue ()”Funksjon returnerer innholdet i filobjektet som en streng.
    • fil.søke()”Funksjonen tar nummeret“ 6 ”som et argument og flytter filpekeren til den tilsvarende posisjonen i filobjektet.
    • fil.avkortet ()”Sletter alt etter gjeldende filpekerposisjon i.e., “6”I filobjektet.
    • getValue ()”Funksjon brukes igjen for å returnere det oppdaterte innholdet i filobjektet.

Produksjon


I ovennevnte utfall har innholdet i "Stringio" -objektet blitt avkortet fra den spesifikke posisjonen.

“Stringio” og “CSV” -metoder

Stringio”Er nyttig for å lage”CSV”Filer i minnet uten å skrive dem til disk. Dette kan være nyttig i tilfeller der du trenger å behandle data før du skriver dem til en fil eller når du ikke vil opprette en fysisk fil.

Eksempel

Følgende er et eksempel på hvordan "Stringio" kan brukes til å lage en "CSV" -fil:

Importer CSV
Fra IO Import Stringio
Data = [["Navn", "Age"], ["Joseph", 23], ["Lily", 12]]
output = stringio ()
Forfatter = CSV.forfatter (output)
forfatter.Writerows (data)
trykk (utgang.getValue ())


I koden ovenfor:

    • For det første “CSV”Modul importeres og“Stringio”Objekt opprettes.
    • Liste over lister”Inneholder noen prøver som er initialisert i programmet.
    • CSV.forfatter()”Brukes til å skrive CSV-data til en fil eller et fillignende objekt.
    • forfatter.Writerows ()”Metode brukes til å skrive datalisten til outputobjektet, som lagrer CSV -dataene som en streng i minnet.
    • Endelig "getValue ()”Metoden brukes for å returnere CSV -dataene som en streng.

Produksjon


CSV -filene i outputten ovenfor er opprettet i minnet uten å bli skrevet til disken.

Forskjeller mellom Stringio og andre strengtyper

“Stringio” ligner på andre strengtyper i Python, for eksempel “STR” og “Bytes”, men med noen viktige forskjeller. Følgende er noen av forskjellene mellom Stringio -modulen og andre strengtyper:

    • “Stringio” er et mutabelt objekt, mens vanlige strenger er uforanderlige.
    • “Stringio” kan brukes som et fillignende objekt. Dette betyr at du kan bruke "Stringio" for å lese og skrive strenger til minnet på samme måte som du ville gjort med et filobjekt.

Fordeler og ulemper med Stringio

Følgene er fordelene og ulempene med Stringio -modulen:

    • Hovedfordelen med "Stringio" er at den lar deg manipulere strenger som om de var filer, noe som kan være nyttig for visse brukstilfeller som CSV-filer i minnet eller lagring av logger.
    • Den største ulempen med "Stringio" er at den er tregere enn andre I/O -metoder for fil og kan bruke opp mye minne.

Konklusjon

I Python, "Stringio”Modul brukes til å manipulere strenger som om de var filer. Det kan brukes til CSV-filer i minnet, lagring av logger eller behandler tekstdata i minnet. Pythons “Stringio”Modul gir forskjellige metoder som“ Read () ”,“ Writ () ”og“ avkortet () ”, etc. å utføre visse operasjoner i Python. Imidlertid er disse metodene tregere enn andre I/O -metoder for fil, og de kan bruke opp mye minne hvis de ikke brukes riktig. Denne bloggen tilbød en dyptgående guide til "Stringio" -modulen gjennom en rekke eksempler.