在python中,如果我说

print 'h'

得到字母h和换行符。如果我说

print 'h',

我得到了字母h,没有换行符。如果我说

print 'h',
print 'm',

我得到字母h,一个空格,和字母m。我如何阻止Python打印空格?

print语句是同一个循环的不同迭代,所以我不能只使用+运算符。


当前回答

我不是在增加一个新的答案。我只是把最好的答案用更好的格式写出来。 我可以看到,通过评级的最佳答案是使用sys.stdout.write(someString)。你可以试试这个:

    import sys
    Print = sys.stdout.write
    Print("Hello")
    Print("World")

将收益率:

HelloWorld

仅此而已。

其他回答

在Python 3中,使用

print('h', end='')

来抑制结束线终止符,和

print('a', 'b', 'c', sep='')

禁用项之间的空格分隔符。请参阅打印文档

这看起来很愚蠢,但似乎是最简单的:

    print 'h',
    print '\bm'

我不是在增加一个新的答案。我只是把最好的答案用更好的格式写出来。 我可以看到,通过评级的最佳答案是使用sys.stdout.write(someString)。你可以试试这个:

    import sys
    Print = sys.stdout.write
    Print("Hello")
    Print("World")

将收益率:

HelloWorld

仅此而已。

print('''first line \
second line''')

它会产生

第一行,第二行

import sys
a=raw_input()
for i in range(0,len(a)):
       sys.stdout.write(a[i])