简体   繁体   English

如何打印显示的图案?

[英]How to Print Pattern Shown?

How do I print pattern in python as shown below:如何在 python 中打印图案,如下所示:

My code:我的代码:

for outer_loop in reversed(range(1, 5+1)):
    for inner_loop in range(0,outer_loop):
#         print(inner_loop*' ')
        print('*',end='')
    print()

Output: Output:

*****
****
***
**
*

I want to give spaces on left side as shown below,我想在左侧留出空格,如下所示,

Expected Output:预期 Output:

*****
 ****
  ***
   **
    *

There is a method rjust on strings:字符串上有一个方法rjust

for n in range(5, 0, -1):
  print( (n*"*").rjust(5) )

You don't need reversed() , range() can return a reversed range by using a negative step.您不需要reversed()range()可以通过使用负步骤返回反向范围。

You can multiply a string to duplicate it, instead of using a loop.您可以将字符串相乘来复制它,而不是使用循环。

Add the spaces by printing 5 - n spaces before n asterisks.通过在n星号前打印5 - n空格来添加空格。

for n in range(5, 0, -1):
    print(" " * (5-n) + "*" * n)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM