2024-10-01 07:35:15 发布
网友
我想用python打印一个左边有星的半金字塔。 到目前为止,这是我的代码
for i in range(1,12): for j in range(12 - i): print(" ", end = " ") for j in range(1, i): print(j, end = " " ) print("\n")
我的输出是
但是,我的输出是按相反的顺序进行的:
1 2 1 3 2 1 4 3 2 1 5 4 3 2 1
我怎样才能改变?在
通过添加第三个参数(-1)来反转范围。另外,将数字格式化为使用2位,因此10不会将最后一行向右推。最后,最后一个print可能不应该有\n,因为这已经是print的默认结束字符:
-1
print
\n
for i in range(1,12): for j in range(12 - i): print(" ", end = "") for j in range(i-1, 0,-1): print(str(j).rjust(2), end = "" ) print()
只需反转第二个循环——打印实际数字的循环:
for j in range(i-1, 0, -1):
最后一个参数控制“步长”,即变量在每次循环迭代中的变化量。输出:
你可以把你打印出来的数字范围颠倒过来
for i in range(1,12): for j in range(12 - i): print(" ", end = " ") for j in reversed(range(1, i)): print(j, end = " " ) print("\n")
通过添加第三个参数(
-1
)来反转范围。另外,将数字格式化为使用2位,因此10不会将最后一行向右推。最后,最后一个print
可能不应该有\n
,因为这已经是print
的默认结束字符:只需反转第二个循环——打印实际数字的循环:
最后一个参数控制“步长”,即变量在每次循环迭代中的变化量。输出:
^{pr2}$你可以把你打印出来的数字范围颠倒过来
相关问题 更多 >
编程相关推荐