Inom sina bibliotek , innehåller Python koden till lyfter fel och stoppa avrättningen av koden . De fel som Python ser för är oftast typiska misstag som programmerare , eller fel som kan hota säkerheten i koden . En av dessa , TypeError , säkerställer att rätt typ av information används för den utförda processen. Om tolken finner fel typ av data i en rad kod , kommer det stoppa programmet . För att förstå ett TypeError , är det viktigt att förstå fel, datatyper och operationer. Fel
fel i Python , liksom många programmeringsspråk , går under namnet " Undantag ". Dessa undantag varnar tolken att ett fel har inträffat . När ett undantag höjs ( eller " kastas " ) , kan en av två saker hända : antingen programmet kommer att krascha , eller programmeraren ska ha inrättat felhantering kod att "fånga " felet och vidta omedelbara åtgärder på grundval av dess förekomst . I båda fallen beror den typ av kastas undantag på vilken typ av fel som inträffar .
TypeError
Programmerare kan kalla upp en TypeError undantag när man använder en felaktig datatyp för en beräkning. TypeError undantag säger i huvudsak att den nuvarande verksamheten inte kan ske med hjälp av tillgängliga typen av uppgifter . Följande exempel fungerar korrekt eftersom Python definierar ett tillägg operation som involverar två olika strängar :
>>> x = " sträng1 " + " string2 "
kommer dock följande exempel kasta ett undantag , eftersom Python inte kan lägga till ett heltal och en sträng :
>>> x = 1 + " string1 "
Förhindra TypeError
en programmerare kan förhindra ett TypeError genom att kontrollera olika typer innan du använder variabler . Detta kräver användning av Pythons introspektiva kapacitet. Genom att använda den " typ " -funktion , kan en programmerare kontrollera vilken typ av data som finns i en variabel . Om uppgifterna inte stämmer överens med de önskade typerna , kan programmeraren tvinga variabeln att byta till en annan typ :
>>> x = " tre "
>> > typ ( x ) katalog
Eftersom x är en " str " , kan programmeraren kräva att den ingående förändringen till ett heltal , eller till något annat helt. Addera fånga TypeError
annat sätt att förhindra programmet från att krascha är att skapa undantagshanterare i händelse av en TypeError händelse , som i följande exempel ( kom ihåg att använda korrekta Python indrag efter " försöka " och " utom " uttalanden ) :
x = 2 Review
y = " tre "
prova :
x + y
utom Typfel :
y = 3 bilder
print y
Lägga " 2 " och " Tre " kommer att kasta en TypeError . Emellertid fångar " utom " uttalande TypeError och förändringar y till ett heltal , som programmet kan säkert lägga till variabeln x .