Wie lass ich eine Liste in Python 3?

Ich habe den folgenden Code gefunden, der mit python2 kompatibel ist

from itertools import izip_longest def grouper(n, iterable, padvalue=None): "grouper(3, 'abcdefg', 'x') --> ('a','b','c'), ('d','e','f'), ('g','x','x')" return izip_longest(*[iter(iterable)]*n, fillvalue=padvalue) 

Allerdings funktioniert das nicht mit Python 3 . Ich bekomme den folgenden Fehler

 ImportError: cannot import name izip_longest 

Kann jemand helfen?

Ich möchte meine Liste von [1,2,3,4,5,6,7,8,9] auf [[1,2,3],[4,5,6],[7,8,9]]

Bearbeiten

Jetzt Python3 kompatibel

Code unten wird von der gewählten Antwort angepasst. Ändern Sie einfach den Namen von izip_longest auf zip_longest .

 from itertools import zip_longest def grouper(n, iterable, padvalue=None): "grouper(3, 'abcdefg', 'x') --> ('a','b','c'), ('d','e','f'), ('g','x','x')" return zip_longest(*[iter(iterable)]*n, fillvalue=padvalue) 

2 Solutions collect form web for “Wie lass ich eine Liste in Python 3?”

In Python 3's itertools gibt es eine Funktion namens zip_longest . Es sollte das gleiche tun wie izip_longest von Python 2.

Warum die Namensänderung? Sie können auch feststellen, dass itertools.izip ist nun in Python 3 gegangen – das ist, weil in Python 3, die zip eingebaute Funktion nun einen Iterator zurückgibt, während in Python 2 gibt es eine Liste. Da es keine Notwendigkeit für die izip Funktion gibt, ist es auch sinnvoll, die _longest Variante für die Konsistenz umzubenennen.

Nach dem doc :

 >>> s = [1,2,3,4,5,6,7,8,9] >>> n = 3 >>> list(zip(*[iter(s)]*n)) [(1, 2, 3), (4, 5, 6), (7, 8, 9)] 
  • Die BadStatusLine-Ausnahme wurde bei der Rückkehr vom Server in Python 3 erhöht
  • Implementieren Sie die Rekursion mit einem rekursiven Anruf
  • Windows kann die Datei nicht auf subprocess.call ()
  • Packen und Auspacken variabler Länge Array / String mit dem Strukturmodul in Python
  • Datei-Dialoge von Tkinter in Python 3?
  • Python-Ausgabe im Sublime-Text anzeigen [duplizieren]
  • Wie man die LaTex-Datei liest
  • Python check string enthält alle Zeichen
  • Beste Weg, um die n-te Zeile der CSV-Datei zugreifen
  • Brauchen Sie Hilfe, um Gromac-Datei in Python zu lesen
  • Implementierung Barriere in Python2.7
  • Python ist die beste Programmiersprache der Welt.