2016-12-12 3 views
-2

Lassen Sie uns sagen, dass wir die folgende (aber tatsächlich auf einem viel größeren Maßstab) haben:Python: Drehen Block Text

ABCDEF 
GHIJKL 
MNOPQR 

Gibt es eine Möglichkeit, es zu drehen, wie die folgenden zu lesen:

FLR 
DKQ 
DJP 
CIO 
BHN 
AGM 

Ich weiß nicht, wo ich anfangen soll, weil es Montagmorgen ist. Danke,

JJ

+1

Wie speichern Sie Ihre Ein- und Ausgänge? Matrizen, mehrere Arrays? Eine Option besteht darin, Matrizen mit dem ASCII-Wert der Zeichen zu erstellen und dann den Transponieroperator zu verwenden, um die gewünschte Ausgabe zu erhalten. –

+0

Ich schaue mir gerade eine Textdatei an - es gibt eine mühsame Art, die ich mir vorstellen kann (jede Zeile ist genau 75 Zeichen lang), aber ich schaue, was du vorgeschlagen hast – pee2pee

+0

Kurz: Klicke auf die verknüpfte Frage und scrolle zur Python-Antwort. – TigerhawkT3

Antwort

1

Diese im Grunde nur, um die Spalten in die Zeilen zu verwandeln.

lines = [] 
with open('file.txt') as f: 
    for line in f: 
     lines.append(line.rstrip()) 

cols = zip(*lines) 
for col in list(cols)[::-1]: 
    print(''.join(col)) 

Ausgänge: Dies kann mit zip() erreicht werden

FLR 
EKQ 
DJP 
CIO 
BHN 
AGM