【问题标题】:Printing Simple Pattern in Python在 Python 中打印简单图案
【发布时间】:2022-11-23 18:56:02
【问题描述】:

我想在 Python 中打印以下模式

输入:5

输出:

    5
   456
  34567
 2345678
123456789

我使用了以下代码,但未显示上述模式。有人帮我解决这个问题吗?

代码:

rows = int(input("Enter number of rows: "))

k = 0
count=0
count1=0

for i in range(1, rows+1):
    for space in range(1, (rows-i)+1):
        print("  ", end="")
        count+=1

    while k!=((2*i)-1):
        if count<=rows-1:
            print(i+k, end=" ")
            count+=1
        else:
            count1+=1
            print(i+k-(2*count1), end=" ")
        k += 1

    count1 = count = k = 0
    print()

输出:

        1
      2 3 2
    3 4 5 4 3
  4 5 6 7 6 5 4
5 6 7 8 9 8 7 6 5

【问题讨论】:

    标签: python


    【解决方案1】:

    如果我理解你的问题,你只需要一个模式从 n 开始并在左侧递减顺序到 1,然后从 n 开始并在右侧递增顺序到 2n-1

      def pattern(n):
            for i in range(n,0,-1):
                for j in range(1,i):
                    print(" ",end="")
                for k in range(i,2*n-i+1):
                    print(k,end="")
                print()
    
    pattern(5)
    
        5
       456
      34567
     2345678
    123456789
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多