language: Python 3 (python-3.2.3)
date: 491 days 20 hours ago
link:
visibility: public
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
from pprint import pprint
 
def q8883268(a):
  def padder(lst, pad_by):
    lengths = [len(x) for x in lst]
    max_len = max(lengths)
    return (x + pad_by * (max_len - length) for x, length in zip(lst, lengths))
 
  # a_padded = padder(a, ('',))
  # a_tr = zip(*a_padded)
  # a_tr_strpadded = (padder(x, ' ') for x in a_tr)
  # a_strpadded = zip(*a_tr_strpadded)
  # return [list(x) for x in a_strpadded]
 
  return [list(y) for y in zip(*(padder(x, ' ') for x in zip(*padder(a, ('',)))))]
 
pprint(q8883268((
 ("row a", "a1","a2","a3"),
 ("another row", "b1"),
 ("c", "x", "y", "a long string")
)))