如何在一行中没有空格的for循环中打印字符串?

时间:2015-12-21 16:53:58

标签: python string python-2.7 for-loop syntax

我想知道如何在一行中的for循环中打印一些字符串,彼此之间没有空格。

我知道如何将它们放在一行(添加逗号),如下所示:

>>> for i in range(3):
...     print 'Hi',
... 
Hi Hi Hi

我也知道在一行中没有空格的串联字符串,但在for循环之外:

>>> print 'hi'+'hi'+'hi'
hihihi

但是,我不知道如何在for循环中这样做。

谢谢!

编辑:我的问题是for循环,这与那些"类似"问题,以及@Elena NNN的想法就是我想要的。

3 个答案:

答案 0 :(得分:4)

s = ""
for i in range(3):
    s+= 'Hi'
print s

答案 1 :(得分:1)

您可以跳过print并直接致电stdout

来实现这一目标
import sys
for i in range(3):
    sys.stdout.write("Hi")
sys.stdout.write("\n")

输出结果为HiHiHi。另请参阅this question,详细讨论printstdout之间的差异。

答案 2 :(得分:1)

您可以使用Python 3中的print函数并指定end字符串,如下所示:

from __future__ import print_function

for i in range(3):
    print('hi', end='')
print()

另一种方法是使用sys.stdout.write,但我更喜欢使用新的print