Dlatego możesz ulec pokusie użycia metody index () podanej na liście Python, aby uzyskać indeks elementu.
Błąd
Weźmy przykład:
my_list = [„mysql”, „postgresql”, „MongoDB”, „redis”]Mamy listę Pythona zawierającą elementy czterokrotne w powyższym przykładzie. Aby znaleźć indeks elementu na liście, używamy funkcji index () i przekazujemy wartość, której szukamy jako parametr.
Jeśli element zostanie znaleziony, funkcja powinna zwrócić indeks elementu na liście. Przykładem jest to, jak pokazano:
Indeks: 2Co się stanie, gdy próbujemy wykonać tę samą operację w tablicy Numpy?
# Importuj NumpyJeśli uruchomimy powyższy kod, zwróci błąd, jak pokazano poniżej:
Błąd atrybutu występuje, gdy wywołujemy atrybut lub metodę nie zdefiniowaną dla obiektu.
Ponieważ metoda index () jest zdefiniowana tylko na liście Pythona, a nie w tablicy Numpy, powyższy kod spowoduje błąd atrybutu.
Rozwiązanie
Jeśli chcesz uzyskać indeks elementu z tablicy Numpy, możesz użyć funkcji Where.
Składnia funkcji jest jak pokazana poniżej:
Numpy.gdzie (warunek, [x, y,]/)Możemy przyjąć powyższą funkcję, aby uzyskać indeks elementu, jak pokazano poniżej:
Drukuj (NP.gdzie (arr == 'MongoDB'))Funkcja powinna zwrócić krotek z indeksem elementu w tablicy.
Wniosek
W tym artykule omówiono błąd atrybutów w Pythonie, dlaczego tak się dzieje i jak go rozwiązać w tablicy Numpy.
Dziękuje za przeczytanie!!