Python 打印格式化列表
我有一份清单:Python 打印格式化列表,python,string,list,formatting,Python,String,List,Formatting,我有一份清单: l = [i for i in range(9)] 我需要将其字符串表示形式格式化如下: '{0}{1}{2}\n{3}{4}{5}\n{6}{7}{8}'.format(l[0], l[1], l[2], l[3], l[4], l[5], l[6], l[7], l[8]) 有没有更优雅/简洁的方法来做这样的事情 我想到了如下的事情: '{0}{1}{2}\n{3}{4}{5}\n{6}{7}{8}'.format([l[i] for i in range(9)]) 但
l = [i for i in range(9)]
我需要将其字符串表示形式格式化如下:
'{0}{1}{2}\n{3}{4}{5}\n{6}{7}{8}'.format(l[0], l[1], l[2], l[3], l[4], l[5], l[6], l[7], l[8])
有没有更优雅/简洁的方法来做这样的事情
我想到了如下的事情:
'{0}{1}{2}\n{3}{4}{5}\n{6}{7}{8}'.format([l[i] for i in range(9)])
但它似乎不起作用。
有其他选择吗?您可能需要进行参数解压缩:
'{0}{1}{2}\n{3}{4}{5}\n{6}{7}{8}'.format(*l)
查看更多详细信息。FWIW,这里是Python 2风格的版本:
L = list('abcdefghi')
print '\n'.join([''.join(u) for u in zip(*[L[i::3] for i in (0, 1, 2)])])
或者只是(({}'*3+'\n')*3.format(*l)
for Python>2.6。