1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | from pprint import pprint from itertools import izip 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 izip(*(padder(x, ' ') for x in izip(*padder(a, ('',)))))] pprint(q8883268(( ("row a", "a1","a2","a3"), ("another row", "b1"), ("c", "x", "y", "a long string") ))) |
ZnJvbSBwcHJpbnQgaW1wb3J0IHBwcmludApmcm9tIGl0ZXJ0b29scyBpbXBvcnQgaXppcAoKZGVmIHE4ODgzMjY4KGEpOgogIGRlZiBwYWRkZXIobHN0LCBwYWRfYnkpOgogICAgbGVuZ3RocyA9IFtsZW4oeCkgZm9yIHggaW4gbHN0XQogICAgbWF4X2xlbiA9IG1heChsZW5ndGhzKQogICAgcmV0dXJuICh4ICsgcGFkX2J5ICogKG1heF9sZW4gLSBsZW5ndGgpIGZvciB4LCBsZW5ndGggaW4gemlwKGxzdCwgbGVuZ3RocykpCgogICMgYV9wYWRkZWQgPSBwYWRkZXIoYSwgKCcnLCkpCiAgIyBhX3RyID0gemlwKCphX3BhZGRlZCkKICAjIGFfdHJfc3RycGFkZGVkID0gKHBhZGRlcih4LCAnICcpIGZvciB4IGluIGFfdHIpCiAgIyBhX3N0cnBhZGRlZCA9IHppcCgqYV90cl9zdHJwYWRkZWQpCiAgIyByZXR1cm4gW2xpc3QoeCkgZm9yIHggaW4gYV9zdHJwYWRkZWRdCgogIHJldHVybiBbbGlzdCh5KSBmb3IgeSBpbiBpemlwKCoocGFkZGVyKHgsICcgJykgZm9yIHggaW4gaXppcCgqcGFkZGVyKGEsICgnJywpKSkpKV0KCnBwcmludChxODg4MzI2OCgoCiAoInJvdyBhIiwgImExIiwiYTIiLCJhMyIpLAogKCJhbm90aGVyIHJvdyIsICJiMSIpLAogKCJjIiwgIngiLCAieSIsICJhIGxvbmcgc3RyaW5nIikKKSkpCgo=
-
upload with new input
-
result: Success time: 0.03s memory: 6420 kB returned value: 0
[['row a ', 'a1', 'a2', 'a3 '], ['another row', 'b1', ' ', ' '], ['c ', 'x ', 'y ', 'a long string']]


