关于打印:如何在python中打印不带空格的变量字符串(最小编码!)

How to print a string of variables without spaces in Python (minimal coding!)

本问题已经有最佳答案,请猛点这里访问。

我有点像:print"
","|",id,"|",var1,"|",var2,"|",var3,"|",var4,"|"

它为每个变量打印空格。

1
| 1 | john | h | johnny | mba |

我想要这样的东西:

1
|1|john|h|johnny|mba|

我有20个变量需要打印,我不喜欢对它们中的每一个使用sys.stdout.write(var)。谢谢你,Python!


对于可变数值:

1
print '|%s|' % '|'.join(str(x) for x in [id, var1, var2, var3, var4])


尝试使用join

1
2
print"
"
+'|'.join([id,var1,var2,var3,var4])

或者如果变量不是字符串:

1
2
print"
"
+'|'.join(map(str,[id,var1,var2,var3,var4]))

这种方法的好处在于,您不必构建长格式字符串,而且对于任意数量的变量,它基本上是不变的。


1
2
print"
|%s|%s|%s|%s"
% (id,var1,var2,var3,var4)

看看字符串格式。

编辑:加入的其他答案更好。join需要字符串。


如果您使用的是python 2.6或更高版本,请使用新的标准来格式化字符串,str.format方法:

1
2
print"
{0}|{1}|{2}|"
.format(id,var1,var2)

链接文本