logo

Hvordan sjekke typen til et objekt i Python

I denne artikkelen vil vi utforske den grunnleggende ferdigheten for å bestemme typen av et objekt i Python . Før du engasjerer deg i noen operasjoner på et objekt i programmeringsspråket Python, er det viktig å ha kunnskap om hvordan du kan sjekke typen. Denne grunnleggende oppgaven møter du regelmessig, enten du jobber med et personlig prosjekt eller et komplekst produksjonssystem.

Sjekk typen til et objekt i Python

Python tilbyr flere metoder for å identifisere et objekts type, med den mest grunnleggende er den innebygde type() funksjonen, som gir en rask måte å sjekke et objekts type. Mer avanserte teknikker, som f.eks er forekomst () funksjon, tilbyr fordelen med å håndtere klassehierarkier og arv. Vi vil starte med å gå over den innebygde type()-funksjonen og deretter gå videre til mer avanserte metoder som er forekomst () funksjon , egenskapen __class__ og andre.

Hent og skriv ut et objekts type: type()

type() returnerer objektets type. Den ligner på en type i andre programmeringsspråk ved at den kan brukes til å hente og skrive ut typen til en variabel eller bokstavelig.



Python3




print>(>type>(>'string'>))> #> print>(>type>(>500>))> #> print>(>type>([>9>,>8>,>7>]))> #>

>

>

Produksjon

>

Hent og skriv ut et objekts type: isinstance()

er forekomst (objekt, type) returnerer True hvis objektargumentet er en underklasse eller forekomst av den oppgitte typeparameteren. Bruk en tupel som det andre alternativet for å se etter ulike typer. Den returnerer True hvis objektet er en forekomst av noen av de medfølgende typene.

Python3




print>(>isinstance>(>'string'>,>str>))> # True> print>(>isinstance>(>300>,>str>))> # False> print>(>isinstance>(>700>, (>int>,>str>)))> # True>

>

>

Produksjon

True False True>

Hent og skriv ut et objekts type: class__ attributt

I Python er alt et objekt, og hvert objekt har sine egne egenskaper. '__class__'-attributtet er det eneste som kan returnere klassetypen til objektet. __class__-attributtet i Python kan også brukes til å verifisere objekttype i tillegg til innebygde funksjoner.

Hvert Python-objekt har et attributt kalt __class__ som inneholder objektets klasseinformasjon. For eksempel kan klassen av heltall 5 bli funnet ved å bruke koden nedenfor.

Python3


jerv vs grevling



x>=> 10> print>(x.__class__)> #> y>=> 'GeeksForGeeks'> print>(y.__class__)> #> z>=> 90.0> print>(z.__class__)> #>

>

>

Produksjon

>

Hent og skriv ut et objekts type: '==' operator og type()

En annen metode for å bestemme et objekts type er å bruke type()-funksjonen og ==-operatoren. Dette kan brukes til å sammenligne typen av et objekt med en bestemt klasse. For eksempel, for å finne ut om heltall 5 er av typen int, kan vi bruke følgende kode:

Python




x>=> 5> print>(>type>(x)>=>=> int>)> # True> y>=> 5.0> print>(>type>(y)>=>=> float>)> # True> z>=> 'techcodeview.com'> print>(>type>(z)>=>=> int>)> # False>

>

>

Produksjon

True True False>

Husk at Python er et dynamisk skrevet språk, noe som betyr at typen av en variabel kan endres mens den brukes. Som et resultat kan det være nødvendig å sjekke typen av et element før du utfører spesifiserte oppgaver. For å legge til to tall, må vi for eksempel sørge for at de er både heltall eller flyter.

Eksempel

Den foregående koden viser hvordan en variabels objekttype kan endres under kjøring.

Python




x>=> 10> print>(>type>(x))> x>=> 'GeeksForGeeks'> print>(>type>(x))>

>

>

Produksjon

>

Den første utskriftssetningen viste typen som 'int' siden 10 er et heltall, men etter å ha tilordnet en streng til den samme variabelen, viste den samme utskriftssetningen typen som 'str' på grunn av den dynamiske endringen av objekttype.

Pythons dynamisk skrivede natur nødvendiggjør prosessen med å sjekke objekttyper. For eksempel, hvis vi ønsker å legge til to tall, må vi sørge for at de er både heltall eller flyter. Inkompatible klassetypeoperasjoner vil resultere i feil som bare kan feilsøkes ved å bruke funksjoner som type() eller den andre tilnærmingen for å få tilgang til '__class__'-egenskapen.

Oppsummert er det avgjørende for utviklere på alle nivåer å mestre objekttypekontroll i Python, enten du er nybegynner eller erfaren programmerer. Forstå teknikkene, for eksempel type(), isinstance() og klasse , er avgjørende for å lage effektiv og pålitelig kode. Disse metodene gir et allsidig verktøysett for ulike typesjekkscenarier og vil forbedre ferdighetene dine i Python-utvikling.