我想知道如何在一行中的for循环中打印一些字符串,彼此之间没有空格。
我知道如何将它们放在一行(添加逗号),如下所示:
>>> for i in range(3):
... print 'Hi',
...
Hi Hi Hi
我也知道在一行中没有空格的串联字符串,但在for循环之外:
>>> print 'hi'+'hi'+'hi'
hihihi
但是,我不知道如何在for循环中这样做。
谢谢!
编辑:我的问题是for循环,这与那些"类似"问题,以及@Elena NNN的想法就是我想要的。
答案 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,详细讨论print
和stdout
之间的差异。
答案 2 :(得分:1)
您可以使用Python 3中的print
函数并指定end
字符串,如下所示:
from __future__ import print_function
for i in range(3):
print('hi', end='')
print()
另一种方法是使用sys.stdout.write
,但我更喜欢使用新的print
。