Heim > Backend-Entwicklung > Python-Tutorial > Wie erhalte ich eine Liste vom „map()'-Iterator von Python 3?

Wie erhalte ich eine Liste vom „map()'-Iterator von Python 3?

Linda Hamilton
Freigeben: 2024-12-09 22:17:10
Original
637 Leute haben es durchsucht

How Do I Get a List from Python 3's `map()` Iterator?

Zugeordnete Listen in Python 3.x abrufen: map() als Iterator

In Python 3.x die Funktion „map()“. gibt einen Iterator anstelle einer Liste zurück. Diese Änderung wurde implementiert, um die Speichereffizienz zu verbessern und die Leistung zu optimieren. Es stellt jedoch eine Herausforderung dar, wenn Sie die zugeordneten Werte als Liste zur weiteren Verarbeitung abrufen müssen.

Lösung: Konvertieren des Iterators in eine Liste

Um die abzurufen Um zugeordnete Werte als Liste anzuzeigen, verwenden Sie die Funktion list(), um den von map() zurückgegebenen Iterator zu konvertieren:

mapped_list = list(map(chr, [66, 53, 0, 94]))
Nach dem Login kopieren

Dieser Code gibt eine Liste zurück, die die enthält Zugeordnete Zeichen: ['B', '5', 'x00', '^'].

Alternative: Verwenden eines Listenverständnisses

Eine prägnantere Methode dazu Um eine Liste in eine Liste zugeordneter Werte umzuwandeln, wird ein Listenverständnis verwendet:

mapped_list = [chr(c) for c in [66, 53, 0, 94]]
Nach dem Login kopieren

Dieser Ausdruck erzeugt das gleiche Ergebnis wie die Funktion „map()“ Beispiel oben.

Direktes Durchlaufen des Kartenobjekts

In bestimmten Szenarien müssen Sie das Kartenobjekt möglicherweise nicht in eine Liste konvertieren. Sie können das Kartenobjekt direkt mit einer for-Schleife durchlaufen:

for c in map(chr, [65, 66, 67, 68]):
    print(c)
Nach dem Login kopieren

Dieser Code gibt die Zeichen „ABCD“ aus, ohne eine unnötige Liste zu erstellen.

Das obige ist der detaillierte Inhalt vonWie erhalte ich eine Liste vom „map()'-Iterator von Python 3?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage