выполнение зеркального правильного прохождения циклов for в Python

#python #python-3.x

#python #python-3.x

Вопрос:

Мне нужна помощь в создании зеркального прямоугольного треугольника, как показано ниже

      1  
    21
   321
  4321
 54321
654321
  

Я могу напечатать обычный прямоугольный треугольник с помощью приведенного ниже кода

 print("Pattern A")
for i in range(8):
    for j in range(1,i):
        print(j, end="")
    print("")
  

Который печатает

 1
12
123
1234
12345
123456
  

Но, похоже, я не могу найти способ отразить это. Я пытался посмотреть в Интернете, как это сделать, но, похоже, я не могу найти никаких результатов для python и только примеры для Java.

Ответ №1:

Вот один из них, использующий новую систему форматирования f-string:

 def test(x):
    s = ""
    for i in range(1,x 1):
        s = str(i)   s
        print(f'{s:>{x}}')

test(6)
  

Ответ №2:

Что-то вроде этого работает. Я перебираю количество строк, добавляю пробелы, необходимые для этой строки, и печатаю цифры.

 def test(x):
    for i in range(1,x 1):
        print((x-i)*(" ")   "".join(str(j 1) for j in range(i)))

test(6)