Å konvertere objekter til strenger er ganske avgjørende, spesielt når det gjelder å overføre data fra et sted til et annet, ettersom strenger er mye enklere å overføre enn objekter. I Python er imidlertid objekter overalt, og dette betyr i utgangspunktet at alt i Python er i kjernen et objekt, til og med de forhåndsdefinerte datatypene. I denne guiden vil STR () og repr () metoder bli brukt til å konvertere forskjellige typer objekter til strenger og bekrefte ved å bruke typen () -metoden.
Metode 1: Bruke Str () -metoden
Str () -metoden er faktisk konstruktørmetoden for å bygge forekomster av strengklassen, og derfor kan den brukes til å konvertere objekter til pythonstrenger. La oss gå over noen eksempler på å bruke STR () -metoden for å konvertere innebygde datatypeobjekter og brukerdefinerte klasseobjekter til strenger.
Eksempel 1: Konvertere innebygde datatypeobjekter til strenger
For å demonstrere dette, ta følgende kode for å lage variabler:
Intvar = 123
Floatvar = 22.22
Listvar = [121,33, 'Google', 12]
Som du kan se, har du laget tre variabler, hvert av et annet datatypeobjekt, for å bekrefte denne bruk av typen () -metoden:
Print (Type (IntVar))
Print (Type (Floatvar)))
Print (Type (Listvar)))
Når denne koden blir utført, gir den følgende resultat på terminalen din:
La oss konvertere dem alle ved hjelp av Str () -metoden, og bekrefte deres type ved hjelp av typen () -metoden:
StrintVar = Str (Intvar)
Strfloatvar = Str (Floatvar)
strlistvar = str (listvar)
Print ("\ Nafter Conversion")
Print (Type (StrintVar))
Print (Type (Strfloatvar))
Print (Type (StrlistVar))
Når denne koden blir utført nå, vil den gi følgende utfall på terminalen:
Denne utgangen bekrefter at du har konvertert forskjellige Python -objekter til Python -strenger med hell.
Eksempel 2: Konvertere tilpassede klasseobjekter til strenger
For å demonstrere dette, oppretter du en grunnleggende tilpasset klasse ved hjelp av følgende kodebit:
Klasse Lhclass:
def __init __ (selv):
Print ("Nytt objekt opprettet")
Lag et objekt i denne klassen, og skriv ut sin type ved hjelp av typen () -metoden:
objlhclass = lhclass ()
trykk (type (objlhclass))
Når denne koden blir utført nå, vil den gi følgende resultat på terminalen:
Som du kan se, er typen av dette objektet den tilpassede klassen "LHCLASS". Lag en ny variabel ved å bruke STR () konstruktøren og passere objektet med lhclass som et argument og skrive ut sin type med typen () -metoden:
convobj = str (objlhclass)
Print ("\ Nafter Conversion")
Print (Type (Convobj))
Når denne koden blir utført, vil den gi følgende resultater på terminalen:
Utgangen bekrefter at objektet med en tilpasset klasse også kan konverteres til en python -streng ved bruk av Str () -metoden.
Metode 2: Bruke repr () -metoden
RePR () -metoden fungerer nesten identisk med Str () -metoden, og for å demonstrere bruken av denne metoden, lag et objekt av heltalldatatypen:
varint = 420
Print (Type (varint))
For å konvertere den til en streng, pass variabelen inne i REPR () -metoden, lagre resultatet i en egen variabel og vis sin type ved hjelp av typen () -metoden:
konvvar = repr (varint)
Print ("\ Nafter Conversion")
Print (Type (Convvar)))
Når denne koden blir utført, vil den vise følgende resultater på terminalen din:
Du har med hell konvertert et heltallobjekt i en Python -streng, og du kan til og med bekrefte at det ikke er noen endring i verdien ved å skrive ut begge variablene til terminalen:
Print (varint)
Print (Convar)
Legg til de to ovennevnte linjene i kodebiten og kjør deretter koden for å få følgende bekreftelse på terminalen:
Som du kan se at det ikke er noen endring i verdien av variablene i det hele tatt.
Konklusjon
Hvis du leter etter en måte å konvertere Python -objekter til Python -strenger, kan du bruke Str () konstruktørmetoden og REPR () -metoden. For å bruke begge disse metodene, må du bare passere objektet som skal konverteres i argumentene og lagre returverdien. For å bekrefte konverteringen, kan du bruke typen () -metoden sammen med setningen (). Disse metodene kan brukes på grunnleggende datatypeobjekter samt objekter i en brukerdefinert klasse.