如何在Python中打印没有空格的变量字符串(最小编码!)

Thi*_*ode 3 python printing stdout

我有类似的东西: print "\n","|",id,"|",var1,"|",var2,"|",var3,"|",var4,"|"

它为每个变量打印空格.

| 1 | john | h | johnny | mba |
Run Code Online (Sandbox Code Playgroud)

我想要这样的东西:

|1|john|h|johnny|mba|
Run Code Online (Sandbox Code Playgroud)

我有20个变量,我必须打印,我讨厌为每个变量使用sys.stdout.write(var).谢谢Pythonistas!

Mik*_*ers 7

对于可变数量的值:

print '|%s|' % '|'.join(str(x) for x in [id, var1, var2, var3, var4])
Run Code Online (Sandbox Code Playgroud)


MAK*_*MAK 6

尝试使用join:

print "\n"+'|'.join([id,var1,var2,var3,var4])
Run Code Online (Sandbox Code Playgroud)

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

print "\n"+'|'.join(map(str,[id,var1,var2,var3,var4]))
Run Code Online (Sandbox Code Playgroud)

这种方法的好处是你不必构建一个长格式字符串,它基本上对任意数量的变量都没有改变.


use*_*875 5

print "\n|%s|%s|%s|%s" % (id,var1,var2,var3,var4)
Run Code Online (Sandbox Code Playgroud)

看看String Formatting.

编辑:加入的其他答案更好.加入期望字符串.