如何在python中横向打印行?

如何在python中横向打印行?,python,formatting,Python,Formatting,我试图打印已排序的行 print accnt, '{}'.format(*file[line][0])#the year 1 .. Accnt.1 2004 print accnt, '{}'.format(*file[line][1])#the year 2 .. Accnt.1 2009 输出文件如下所示: File 1 Accnt.1 2004 Accnt.1 2009 Accnt.2 2001 Accnt.2 2005 File 1 Accnt.1 2004 Accnt.1 2009

我试图打印已排序的行

print accnt, '{}'.format(*file[line][0])#the year 1 .. Accnt.1 2004
print accnt, '{}'.format(*file[line][1])#the year 2 .. Accnt.1 2009
输出文件如下所示:

File 1
Accnt.1 2004
Accnt.1 2009
Accnt.2 2001
Accnt.2 2005
File 1
Accnt.1 2004 Accnt.1 2009
Accnt.2 2001 Accnt.2 2005
我怎样才能这样打印它:

File 1
Accnt.1 2004
Accnt.1 2009
Accnt.2 2001
Accnt.2 2005
File 1
Accnt.1 2004 Accnt.1 2009
Accnt.2 2001 Accnt.2 2005

谢谢

如果您只想在一行中打印每个打印语句的每条记录,请在打印语句的末尾添加逗号:

print accnt, '{}'.format(*file[line][0]),
print accnt, '{}'.format(*file[line][1])

确保不要将逗号放在最后一行,或使用空的print语句在每个文件后打印换行符。

在python 2.x中使用尾随逗号,在python 3.x中使用
打印(x,end='')


如果您不需要进行参数扩展,而且看起来也不需要,那么这可能会起作用

print 'accnt {0} accnt {1}'.format(file[line][0],file[line][1])

从其他(正确)答案中借用一点:

虽然您可以使用
printfoo,
来抑制换行符(在python2.x中)和
print(foo,end='')
在python3.x中,但我建议您直接写入
sys.stdout
。它具有跨python版本的统一接口--

或者更简单地说:

sys.stdout.write('accnt {0} accnt {1}\n'.format(*(file[line]))

您将不得不共享更多的代码。您的数据是如何存储的?你的输入是什么?也许使用我很确定你不想让解包操作员在那里<代码>'{}.format(*“Foo”)将返回
'F'
您可能是对的。我只是假设原始代码可以工作。