首页 > 解决方案 > python 3中没有空格的金字塔打印

问题描述

我是 python 和 for 循环的新手,也是堆栈溢出的新手。我正在尝试使用 for 循环但没有空格来制作带有星星的金字塔形状。任何帮助将不胜感激。我似乎无法在没有空格的情况下完成它

num = int(input("Enter a number of rows: "))
for i in range(0,num):
    for j in range(0,num-i-1):
        print(end=" ")
    for j in range(0,1+i):
        print("*", end=" ")
    print()

标签: python

解决方案


这就是您可以在多行代码中做到这一点的方法,但仍然非常简洁,除非有人有更好的方法!

x=8
for i in range(1,x):
    print((' '*(x-i))+('*'*i)+('*'*(i-1)))

但是,如果您真的想在一行中执行此操作,则可以这样做:

exec("x=int(input('Input max number: '))\nfor i in range(1,x):print((' '*(x-i))+('*'*i)+('*'*(i-1)))")

如您所见,它有效!


推荐阅读