Kontroll av objekttyp i Python
För att kontrollera typen av ett element behöver du använda
funktionen isinstance. Den tar sitt första
parameter som elementet, och den andra -
typen som det ska kontrolleras mot. Samtidigt
som namn för den andra parametern
används namnen på funktioner som omvandlar data
till motsvarande typ: för strängar - str,
tal - int, listor - list
osv. Funktionen isinstance returnerar
booleska värden: om elementet överensstämmer med
typen, returneras True, annars
fall - False.
Exempel
Låt oss säga att vi har variabeln tst.
Låt oss kontrollera om dess värde är en
sträng. För att göra detta, skriv funktionen isinstance
till höger om if.
I dess parametrar skickar vi tst och typen
str. Om värdet och datatypen
stämmer överens, låt motsvarande
meddelande visas:
tst = 'a'
if isinstance(tst, str):
print('string')
Resultat av kodkörning:
'string'
Exempel
Låt oss nu kontrollera om variabeln är ett heltal:
tst = 12
if isinstance(tst, int):
print('integer')
Resultat av kodkörning:
'integer'
Exempel
För att kontrollera om tst
är ett flyttal, ska den andra
parametern isinstance få
typen float:
tst = 12.0
if isinstance(tst, float):
print('float')
Resultat av kodkörning:
'float'
Exempel
Låt oss nu skriva ett villkor för att
kontrollera tst mot en lista:
tst = [1, 2, 3]
if isinstance(tst, list):
print('list')
Resultat av kodkörning:
'list'
Exempel
Låt oss kontrollera om variabeln är en tuple:
tst = (1, 2, 3)
if isinstance(tst, tuple):
print('tuple')
Resultat av kodkörning:
'tuple'
Exempel
Låt oss nu ställa ett villkor för att ta reda på om variabelns värde är en ordbok:
tst = {'a': 1, 'b': 2, 'c': 3}
if isinstance(tst, dict):
print('dictionary')
Resultat av kodkörning:
'dictionary'
Praktiska uppgifter
Låt oss säga att du har en variabel. Kontrollera om dess värde är ett heltal.
Ta reda på om den givna variabeln är ett flyttal.
Kontrollera om variabeln innehåller ett strängvärde.
Kontrollera om den givna variabeln är en ordbok.
Kontrollera om den givna variabeln är en mängd.
Kontrollera om den givna variabeln är en tuple.
Kontrollera om den givna variabeln är en lista.