2016-11-29 42 views

回答

0

蟒蛇format mini language提供了一个强有力的机制来控制的事情是如何显示

尤其是你正在寻找的*三角中心^和填充用。对于尺寸为n的三角形,三角形的宽度是2n-1,例如,对于n=5:格式规格将为' ^9'
每行*的个数为2i-1 for i in 1..n

所以把这个放在一起你会得到:

>>> n = 5 
>>> for i in range(1, n+1): 
...  print(format('*'*(2*i-1), ' ^'+str(2*n-1))) 
    *  
    *** 
    ***** 
******* 
********* 

或者作为一个单一的表达式(使用变量替换):

print('\n'.join('{: ^{width}}'.format('*'*(2*i-1), width=2*n-1) for i in range(1, n+1)))