- rows = every_nth(message, len(transpositions), fillvalue=' ')
- transposed_rows = [transpose(row, transpositions) for row in rows]
- return combine_every_nth(transposed_rows)
+ columns = every_nth(message, len(transpositions), fillvalue=' ')
+ transposed_columns = transpose(columns, transpositions)
+ return combine_every_nth(transposed_columns)
+
+def column_transposition_decipher(message, keyword):
+ """
+ >>> column_transposition_decipher('hleolteher', 'clever')
+ 'hellothere'
+ """
+ transpositions = transpositions_of(keyword)
+ columns = every_nth(message, len(transpositions), fillvalue=' ')
+ transposed_columns = untranspose(columns, transpositions)
+ return combine_every_nth(transposed_columns)
+