W tym artykule dowiemy się, czym jest typeerror w Pythonie, co go powoduje i jak rozwiązać lub naprawić błędy typu w Pythonie. Python jest opisywany jako język programowania wysokiego poziomu, który jest zorientowany na obiekt i został opracowany przez Guido van Rossum. Python jest językiem wsparcia dla programistów i jest używany do sprawdzania kompilacji, administrowania testami itp. Może wystąpić kilka błędów lub wyjątków podczas obsługi danych w programowaniu Pythona, więc ten artykuł pomoże rzucić nieco światła na jeden z wyjątków w Python o nazwie typeerror.
Jaki jest błąd typu Pythona?
Błąd typu Pythona to anomalia lub nieregularność, która występuje, gdy obiekt w typu danych nie jest odpowiedni dla operacji. Ten typ typu występuje, gdy operacja jest wykonywana na obiekcie, który nie jest odpowiedni dla danych lub danych nie obsługuje obiektu. Innymi słowy, typeerror reprezentuje błąd, który jest podniesiony, gdy nie można wykonać funkcji lub operacji, a operacja jest wymuszona na obiekcie niewłaściwego typu. Przykładem byłoby to, że podczas korzystania z operacji + (dodania) w typu ciągu, błąd zostanie zwiększony o wartość liczb całkowitą.
Co powoduje błąd typu Pythona?
TypeError jest jednym z kilku wyjątków w standardowym Pythonie. Jak wspomniano wcześniej, ten błąd jest podniesiony, gdy operacja jest wykonywana w niewłaściwym typie obiektu. Istnieje kilka powszechnych przyczyn typu w Pythonie. Niektóre z nich opisano poniżej:
Nieobsługiwane operacje między dwoma typami
Ten błąd występuje podczas wykonywania między dwoma niekompatybilnymi lub nieobsługiwanymi typami danych.
Aby wyjaśnić, użyjemy przykładu zmiennej „my_str”, która jest „ciąg” i zmienną „12”, która jest liczbą całkowitą. Nie możesz użyć operacji + (dodania) między nimi, ponieważ nie wspierają się. Aby wyjaśnić, wiemy, że liczbę całkowitą można dodać do innej liczby całkowitej lub dziesiętnej i nie możemy dodać liczby całkowitej do obiektu stringowego lub zmiennej.
Jeśli wprowadzimy następujące dane, aby dodać liczbę całkowitą do łańcucha, otrzymamy następujące czynności:
my_str = „Witaj”
my_num = 12
drukuj (my_str + my_num + my_str)
Typeerror występuje, jeśli wykonywana jest operacja matematyczna lub włączona między obiektami, które go nie obsługują. Wynik wykonanych danych wyświetli błąd typu, a wyjście będzie:
To wyjście pokazuje, że błąd typu jest ciągiem, a nie liczbą całkowitą, ponieważ liczba całkowita nie jest kompatybilna z ciągiem. W powyższym przykładzie ciąg „Welcome” próbuje dodać do liczby całkowitej „12”, a ponieważ dodatku nie można wykonać między dwoma różnymi typami, występuje błąd typu.
Nazywanie niezakłóconego identyfikatora
Inną przyczyną typueRror jest wywołanie obiektu niezakłóconego, takiego jak liczba całkowita. Sznurek dla „Pythona jest bardzo łatwy do nauczenia!!„Zawarte w zmiennej„ my_message ”nie jest w tym przypadku nieokalbowalne i wyrzuci błąd typu, gdy zostanie wywołany w instrukcji drukowania.
my_message = "Python jest bardzo łatwy do nauczenia!!"
print (my_message ())
W Pythonie dowolna funkcja lub metoda, z implementacją metody wywołania w definicji klasy, jest nazywana Callowal. Podobnie jak dowolna funkcja lub metoda, możemy wywołać obiekt do nazwy. Tak więc, jeśli wywoływana jest liczba całkowita, która jest obiektem niezakłóconym, hodowany jest typeerror. Wyjście dla powyższego polecenia będzie wyglądać tak:
Ten wynik wskazuje, że obiektu ciągów nie można wywołać. Przykład pokazuje, że ciąg „Python jest bardzo łatwy do nauczenia” nie można wywołać po wykonywaniu instrukcji drukowania, ponieważ jest to przypadek niezakłócony w tym kontekście.
Niepoprawny typ indeksu listy
Błąd typu jest podnoszony, gdy niepoprawny typ jest przekazywany do wbudowanej funkcji. W Python wskaźniki listy muszą zawsze być liczbą całkowitą. Aby to zrozumieć, załóżmy, że chcemy stworzyć listę przedmiotów, powiedzmy jabłko, oglądanie, pierścień, paznokcie i torba. Teraz, kiedy wkładamy dane i drukujemy wartość, którą otrzymujemy typeerror. Jak wiemy, wskaźniki powinny być albo w postaci liczb całkowitych lub liczb dziesiętnych, dlatego jeśli użyje się ciąg, wystąpi błąd.
my_list = [„Apple”, „Watch”, „Ring”, „paznokcie”, „torba”]
index_num = "2"
Drukuj („Oto oryginalna lista:”)
Drukuj (my_list)
Drukuj („Oto wynik:”)
druk (my_list [index_num])
W powyższym przykładzie, ponieważ kod wartości indeksu jest podany w ciągu, błąd typu jest podniesiony. Poniżej znajduje się wyjście wykonanego polecenia:
W takim przypadku otrzymujemy typeerror, ponieważ typ ciągu jest wykrywany w wartości indeksu, gdy wiemy, że do indeksów należy użyć tylko liczb całkowitych lub dziesiętnych. Z powodu błędu wyświetlanego na wyjściu wskaźniki muszą znajdować się w postaci liczb całkowitych lub plasterków, w przeciwnym razie błąd typu jest podniesiony.
Jak rozwiązać błędy typu?
W programie nie można uniknąć błędów, ale ich występowanie zawsze można zminimalizować. Aby zminimalizować występowanie błędów, możemy sprawdzić typy danych operandów, które pomogą uniknąć operacji z niezgodnymi typami danych. Zmienne, klasy i funkcje w programie powinny również otrzymać nazwy właściwe, aby pomóc Ci uniknąć wywoływania obiektów niezakłóconych. Innym sposobem uniknięcia błędu jest to, że typ obiektu należy sprawdzić przed wykonaniem operacji. Pomoże to zapewnić, że operacja jest odpowiednia dla obiektu i obiektu, który obsługuje operację. Jeśli użyjemy jednego z powyższych przykładów, dodamy do niego jeszcze jeden krok, będzie:
my_list = [„Apple”, „Watch”, „Ring”, „paznokcie”, „torba”]
index_val = [0, „1”, 2, 3]
Dla i w zakresie (len (index_val)):
próbować:
print (my_list [index_val [i]])
Z wyjątkiem typueRror:
print („TypeError: Check lista indeksów”)
Dane wyjściowe tego polecenia będzie:
To pokazuje, że gdy okaże się, że jakikolwiek indeks jest niewłaściwy, wystąpi błąd, a dany kod będzie go obsługiwać. Ta kontrola pomoże ustalić, czy jeden z nich nie jest liczbą całkowitą i dlaczego błąd wystąpi, jeśli nie zostanie skorygowany.
Wniosek
Ten artykuł dotyczy błędów typu Pythona, w którym nauczyliśmy się w uproszczeniu z przykładami tego, jaki błąd typu jest w Pythonie i co go powoduje i jak tego uniknąć. Chociaż czasami jest nieuniknione, popełnianie błędów, lepiej poradzić sobie z błędem, zanim to nastąpi i pamiętaj o przyczynach typu. Jak wspomniano powyżej, typeerror jest wyjątkiem, który występuje, gdy programista określa nieprawidłowy typ obiektu dla operacji.