我正在尝试在python 2.7.15中创建一个反向三角形,如下所示:
**********
*********
********
*******
******
*****
****
***
**
*
到目前为止,我的代码是这样:
for x in range (1,11):
for spaces in range (1,11-x):
print " ",
for y in range (1, x+1):
print "*",
print
但是它吐出了这个三角形:
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
* * * * * * * * * *
我如何使python反转?
答案 0 :(得分:1)
如果这是您的预期输出,则可以执行以下操作:
for i in range(10, 0, -1):
print('*' * i)
在python 2中,就像你在的一样:
for i in range(10, 0, -1):
print '*' * i
可以缩写为:
print(*('*' * i for i in range(10, 0, -1)), sep='\n')
...将每行解压缩为单个打印功能,并在每行之间添加新行。此缩短的版本仅适用于Python3。 (如果可能,我还建议升级到python 3)
其背后的想法如下:
*
*
乘以范围内的数字。