是否可以在没有换行符和空格的Python 2中使用'print >>'?

时间:2018-07-17 03:20:52

标签: python python-2.7 python-2.x

在以下代码中:

with open("output", "w") as f:
    print >> f, "foo"
    print >> f, "bar"

“输出”文件为:

foo
bar

如何使用print >>避免换行符和空格?

PS::我实际上是想知道是否可以使用print >>来做到这一点。我知道其他可以避免使用'\ n'的方式,例如f.write("foo")f.write("bar")

此外,我知道结尾的逗号。但这会打印foo bar,而不是foobar

1 个答案:

答案 0 :(得分:5)

后缀逗号使print变得神奇,就像不打印换行符,除非没有进一步的输出(not documented!):

print >>f, "foo",

,但是如果您想要一个一致的不换行策略(并且因为您还有第二个print,它将打印一个空格),这并没有真正的帮助。为此,请使用Python 3的打印功能:

from __future__ import print_function

print("foo", end="", file=f)