如何在一行中没有空格的情况下在for循环中打印字符串?
我想知道如何在一行中的for循环中打印一些字符串,而彼此间没有空间。如何在一行中没有空格的情况下在for循环中打印字符串?
我知道如何把它们放在同一行(添加一个逗号),如下图所示:
>>> for i in range(3):
... print 'Hi',
...
Hi Hi Hi
我也知道串联无间隙串在一条线,但外面的for循环:
>>> print 'hi'+'hi'+'hi'
hihihi
但是,我不知道如何在for循环中做到这一点。
谢谢!
编辑:我的问题是在for循环中,这是不同于那些“类似”的问题,并且@Elena NNN的想法是我正在寻找的。
s = ""
for i in range(3):
s+= 'Hi'
print s
谢谢你,你真聪明!我只是想在箱子里哈哈。 –
您可以跳过print
并直接调用stdout
实现这个:
import sys
for i in range(3):
sys.stdout.write("Hi")
sys.stdout.write("\n")
输出结果为HiHiHi
。有关print
和stdout
之间差异的冗长讨论,另见this question。
非常感谢您采用这种更高级的方式。 –
您可以使用在Python 3 print
功能,并指定一个end
字符串是这样的:
from __future__ import print_function
for i in range(3):
print('hi', end='')
print()
另一种方法是使用sys.stdout.write
,但我更喜欢使用新print
。
是的,我明白了。在这种情况下,Python 3中的新打印功能非常方便。 –
@stidgeon谢谢! –