2

我有print (5*"@"),这给了我:

@@@@@

现在,如果我添加\nprint (5*"@\n"),它会给我五行,@每行一行。

当我希望它给我这个时,我该怎么做:

四行,@每行五行,无需输入@@@@@代码?

我尝试了类似的东西,print(5*"@", 4*"\n")但显然没有用。

4

5 回答 5

6

您可以使用以下内容:

(5 * '@' + '\n') * 4

请注意,这比'@@@@@\n' * 4.

于 2012-10-10T16:49:55.507 回答
3

你如何循环打印语句 4 次?

for _ in range(4):
    print(5 * '@')

或者,使用+追加换行符,并将结果乘以 4:

print((5 * '@' + '\n') * 4)

或者,使用列表和.join()带有换行符的元素:

print('\n'.join([5 * '@'] * 4))
于 2012-10-10T16:48:26.450 回答
1
for x in [5 * "@"] * 4:
    print x

或者:

print "\n".join([5 * "@"] * 4)
于 2012-10-10T16:59:48.673 回答
0

你可以做print "%s\n" % (5*"@")*4

于 2012-10-10T17:11:37.267 回答
0

一行版本:

>>> print 4 * ("%s\n" % (5*"@"))

或者

>>> print 4 * ( 5*"@" + "\n" )

多行:

>>> for x in xrange(4):
    print "@@@@@"


@@@@@
@@@@@
@@@@@
@@@@@
于 2012-10-10T17:03:35.460 回答