Ich habe eine Frage über das Schleifenkonstrukt in Python in der Form: for x in y:
In meinem Fall ist y eine Zeile, die aus einer Datei gelesen wird, und x sind getrennte Zeichen. Ich möchte nach jedem Zeichenpaar in der Ausgabe ein Leerzeichen setzen, zB: aa bb cc dd
usw. Also würde ich gerne die aktuelle Iteration kennenlernen. Ist es möglich, oder muss ich einen traditionelleren C-Stil für eine Schleife mit einem Index verwenden?
Wenn Sie nach jedem Zeichenpaar ein Leerzeichen einfügen, möchten Sie vielleicht etwas mit Listenübersichten wie:
machen %Vor%Ohne das zusätzliche Leerzeichen hinzuzufügen, wird das letzte Zeichen von Zeilen mit einer ungeraden Anzahl von Zeichen gelöscht. Mit dem angehängten Leerzeichen haben Zeilen mit einer ungeraden Anzahl von Zeichen am Ende einen zusätzlichen Platz.
(Vielleicht gibt es eine pythischere Methode als das, was ich getan habe.)
Ich kann nicht wirklich behaupten, dass dies besser ist als die enumerate
-Methode, aber es ist weniger offensichtlich für jemanden, der aus einer C-Perspektive kommt, also dachte ich, ich würde es auf Vollständigkeit hinweisen:
In Python wird es oft bevorzugt (oder zumindest ermutigt), etwas mit Generatoren zu tun oder solche Listen aufzulisten, anstatt sich auf enumerate
zu verlassen.
Dies ist eine Variation der Methode grouper
aus der Dokumentation des itertools-Moduls .