TypeError behoben: 'map'-Objekt ist in Python nicht abonnierbar
-
Ursache des Fehlers
TypeError: 'map' object is not subscriptable
in Python -
Beheben Sie den Fehler
TypeError: 'map' object is not subscriptable
in Python
Jede Programmiersprache trifft auf viele Fehler. Einige treten zur Kompilierzeit auf, andere zur Laufzeit.
Dieser Artikel behandelt TypeError: 'map' object is not subscriptable
, eine Unterklasse von TypeError
. Wir stoßen auf einen TypeError
, wenn wir versuchen, eine Operation auszuführen, die mit dem Objekttyp nicht kompatibel ist.
Ursache des Fehlers TypeError: 'map' object is not subscriptable
in Python
Python 2-Kartenoperationen in Python 3
In Python 2 gibt die Methode map()
eine Liste zurück. Wir können auf die Elemente der Liste zugreifen, indem wir ihren Index über den Indexoperator []
verwenden.
In Python 3 gibt die Methode map()
ein Objekt zurück, das ein Iterator ist und nicht indiziert werden kann. Wenn wir versuchen, mit dem Indexoperator []
auf das Element zuzugreifen, wird der TypeError: 'map' object is not subscriptable
ausgelöst.
Beispielcode:
# Python 3.x
my_list = ["1", "2", "3", "4"]
my_list = map(int, my_list)
print(type(my_list))
my_list[0]
Ausgang:
#Python 3.x
<class 'map'>
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-1-07511913e32f> in <module>()
2 my_list = map(int, my_list)
3 print(type(my_list))
----> 4 my_list[0]
TypeError: 'map' object is not subscriptable
Beheben Sie den Fehler TypeError: 'map' object is not subscriptable
in Python
Konvertieren Sie das Map-Objekt in Python 3 in List
Wenn wir das Kartenobjekt mit der Methode list()
in eine Liste umwandeln, können wir die Methoden tiefgestellter Operator/Liste verwenden.
Beispielcode:
# Python 3.x
my_list = ["1", "2", "3", "4"]
my_list = list(map(int, my_list))
print(my_list[0])
Ausgang:
#Python 3.x
1
Verwenden Sie die for
-Schleife mit Iterator in Python 3
Wir können auf die Elemente im Iterator mit einer for
-Schleife zugreifen. Es ruft die Methode __next__()
auf der Rückseite auf und gibt alle Werte aus.
Beispielcode:
# Python 3.x
my_list = ["1", "2", "3", "4"]
my_list = list(map(int, my_list))
for i in my_list:
print(i)
Ausgang:
#Python 3.x
1
2
3
4
I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.
LinkedInVerwandter Artikel - Python Error
- Adresse wird bereits verwendet Fehler in Python
- AttributeError: __Exit__ in Python
- AttributeError: 'Dict'-Objekt hat kein Attribut 'Append' in Python
- AttributeError: 'NoneType'-Objekt hat kein Attribut 'Text' in Python
- AttributeError: Int-Objekt hat kein Attribut
- AttributeError: Modul Urllib hat keine Attributanforderung