Przejdź do treści
Wyjątki PythonBłąd
TypeError: object is not subscriptable

TypeError: obiekt nie obsługuje indeksowania

Użyto notacji nawiasowej ([]) na obiekcie, który nie obsługuje indeksowania.

python

Co powoduje ten błąd

Użyto notacji nawiasowej na obiekcie, który nie implementuje __getitem__. Najczęściej zdarza się, gdy zmienna ma wartość None, jest liczbą całkowitą lub innym typem nieobsługującym indeksowania.

Jak to naprawić

Sprawdź typ obiektu przed indeksowaniem. Dodaj sprawdzenie None: if obj is not None: obj[0]. Zweryfikuj, czy zmienna jest oczekiwanego typu (lista, słownik, ciąg znaków). Używaj adnotacji typów i narzędzi do sprawdzania typów, aby wcześnie wykrywać takie błędy.

Przykład

None[0]  # TypeError: 'NoneType' object is not subscriptable
Oficjalna dokumentacja

Powiązane kody błędów