编写一个程序,提示用户输入到15 1-3的整数,并显示一个金字塔,如图以下样品运行:棱锥数
1
2 1 2
3 2 1 2 3
4 3 2 1 2 3 4
5 4 3 2 1 2 3 4 5
6 5 4 3 2 1 2 3 4 5 6
7 6 5 4 3 2 1 2 3 4 5 6 7
我有以下几点:
num = eval(raw_input("Enter an integer from 1 to 15: "))
if num < 16:
for i in range(1, num + 1):
# Print leading space
for j in range(num - i, 0, -1):
print(" "),
# Print numbers
for j in range(i, 0, -1):
print(j),
for j in range(2, i + 1):
print(j),
print("")
else:
print("The number you have entered is greater than 15.")
这产生了数大于或等于一个未对准至10
我试图打印(格式(J,“4D”))和所有的数字变得不对准。
任何提示? 谢谢。
您可能正在寻找诸如'str(j).rjust(2,'')或'str(j).ljust(2,'')之类的东西。 –
打印基数为16的数字,他们是a只需一位数字。对齐问题解决了! – Useless