由制表符分隔的两列连接成行.在itertools中查找迭代器等价物,以实现节省空间的解决方案.
import string def fmtpairs(mylist): pairs = zip(mylist[::2],mylist[1::2]) return '\n'.join('\t'.join(i) for i in pairs) print fmtpairs(list(string.ascii_uppercase)) A B C D E F G H I J ...
哎呀......被S.Lott抓住了(谢谢).
更通用的解决方案,处理任意数量的列和奇数列表.从S.lott略微修改,使用发电机节省空间.
def fmtcols(mylist, cols): lines = ("\t".join(mylist[i:i+cols]) for i in xrange(0,len(mylist),cols)) return '\n'.join(lines)