2016-12-12 3 views
-2

Допустим, мы имеем следующее (но на самом деле в гораздо большем масштабе):Python: Поворот блока текста

ABCDEF 
GHIJKL 
MNOPQR 

Есть ли способ, чтобы повернуть его читать как:

FLR 
DKQ 
DJP 
CIO 
BHN 
AGM 

Я не знаю, с чего начать, потому что это понедельник утром. Спасибо,

JJ

+1

Как вы хранящих свои входы и выходы? Матрицы, несколько массивов? Один из вариантов, который у вас есть, - это создание матриц со значением ASCII символов, а затем использование оператора транспонирования для получения желаемого результата. –

+0

В настоящее время я просматриваю текстовый файл - есть трудный способ, о котором я могу думать (каждая строка имеет ровно 75 символов), но посмотрит, что вы предложили – pee2pee

+0

Вкратце: нажмите на связанный вопрос и перейдите к ответу Python. – TigerhawkT3

ответ

1

Это в основном только преобразование столбцов в строки. Это может быть достигнуто с zip():

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)) 

Выходы:

FLR 
EKQ 
DJP 
CIO 
BHN 
AGM 
Смежные вопросы