logo

Sådan kontrolleres typen af ​​et objekt i Python

I denne artikel vil vi udforske den væsentlige færdighed til at bestemme typen af ​​et objekt i Python . Før du udfører nogen operationer på et objekt i Python-programmeringssproget, er det bydende nødvendigt at have viden om, hvordan man kontrollerer dets type. Denne grundlæggende opgave støder du på jævnligt, uanset om du arbejder på et personligt projekt eller et komplekst produktionssystem.

Tjek typen af ​​et objekt i Python

Python tilbyder flere metoder til at identificere et objekts type, hvor den mest grundlæggende er den indbyggede type() funktion, som giver en hurtig måde at kontrollere et objekts type. Mere avancerede teknikker, som f.eks er eksempel () funktion, tilbyder fordelen ved at håndtere klassehierarkier og arv. Vi vil starte med at gennemgå den indbyggede type()-funktion og derefter gå videre til mere avancerede metoder som f.eks er eksempel () funktion , egenskaben __class__ og andre.



Hent og udskriv et objekts type: type()

type() returnerer objektets type. Det ligner en type i andre programmeringssprog, idet det kan bruges til at hente og udskrive typen af ​​en variabel eller bogstavelig.

Python3








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

>

>

Produktion

>

Hent og udskriv et objekts type: isinstance()

er eksempel (objekt, type) returnerer True, hvis objektargumentet er en underklasse eller forekomst af den leverede typeparameter. Brug en tuple som den anden mulighed for at tjekke for forskellige typer. Det returnerer True, hvis objektet er en forekomst af en af ​​de leverede typer.

Python3




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

>

>

Produktion

True False True>

Hent og udskriv et objekts type: class__ attribut

I Python er alt et objekt, og hvert objekt har sine egne karakteristika. '__class__'-attributten er den eneste, der kan returnere objektets klassetype. __class__-attributten i Python kan også bruges til at verificere objekttype ud over indbyggede funktioner.

Hvert Python-objekt har en attribut kaldet __class__, der indeholder objektets klasseinformation. For eksempel kan klassen af ​​heltal 5 findes ved at bruge koden nedenfor.

Python3


jerv vs grævling



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

>

>

Produktion

>

Hent og udskriv et objekts type: '==' operator og type()

En anden metode til at bestemme et objekts type er at bruge type()-funktionen og ==-operatoren. Dette kan bruges til at sammenligne typen af ​​et objekt med en bestemt klasse. For eksempel, for at afgøre, om heltal 5 er af typen int, kan vi bruge 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>

>

>

Produktion

True True False>

Husk, at Python er et dynamisk skrevet sprog, hvilket betyder, at typen af ​​en variabel kan ændre sig, mens den bliver brugt. Som følge heraf kan det være nødvendigt at kontrollere arten af ​​et emne, før du udfører specificerede opgaver. For at tilføje to tal skal vi for eksempel sikre, at de både er heltal eller flydende.

Eksempel

Den foregående kode viser, hvordan en variabels objekttype kan ændre sig under udførelse.

Python




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

>

>

Produktion

>

Den indledende print-sætning viste typen som 'int', da 10 er et heltal, men efter at have tildelt en streng til den samme variabel, viste den samme print-sætning typen som 'str' på grund af den dynamiske ændring af objekttype.

Pythons dynamisk indtastede natur nødvendiggør processen med at kontrollere objekttyper. For eksempel, hvis vi ønsker at tilføje to tal, skal vi sikre, at de både er heltal eller flydende. Inkompatible klassetypeoperationer ville resultere i fejl, der kun kunne fejlfindes ved hjælp af funktioner som type() eller den anden tilgang til at få adgang til egenskaben '__class__'.

Sammenfattende er det afgørende for udviklere på alle niveauer at mestre objekttypekontrol i Python, uanset om du er nybegynder eller erfaren programmør. Forståelse af teknikkerne, såsom type(), isinstance() og klasse , er afgørende for at skabe effektiv og pålidelig kode. Disse metoder giver et alsidigt værktøjssæt til forskellige typekontrolscenarier og vil forbedre dine færdigheder i Python-udvikling.