CS50 马里奥 Python - 更多
CS50 Mario Python - more
尝试Python CS50 中的 Mario more 作业 - 打印出指定高度的双半金字塔。代码和输出在我看来是正确的,但 check50 结果很糟糕。
请告诉我,我做错了什么吗?
https://submit.cs50.io/check50/05296ef97446aba062bd8e9993587e347da25878
from cs50 import get_int
while True:
n = get_int("Height: \n")
if n > 0 and n < 9:
break
for i in range(n):
print(" " * (n-1-i), end="")
print("#" * (i+1), end=" ")
print("#" * (i+1), end="")
print(" " * (n-1-i))
Check50 不希望在第二行 # 块之后 spaces。对我们人类来说,缺少字符和 space 个字符看起来是一样的,但是 check50 可以分辨出区别。换句话说,删除最后一个打印行。
此外,也许您复制并粘贴到这里是错误的,但是白色 space 在 python 中很重要,而在 C 中则没有。这意味着您必须缩进您所包含的行在 if 块中。
尝试Python CS50 中的 Mario more 作业 - 打印出指定高度的双半金字塔。代码和输出在我看来是正确的,但 check50 结果很糟糕。 请告诉我,我做错了什么吗? https://submit.cs50.io/check50/05296ef97446aba062bd8e9993587e347da25878
from cs50 import get_int
while True:
n = get_int("Height: \n")
if n > 0 and n < 9:
break
for i in range(n):
print(" " * (n-1-i), end="")
print("#" * (i+1), end=" ")
print("#" * (i+1), end="")
print(" " * (n-1-i))
Check50 不希望在第二行 # 块之后 spaces。对我们人类来说,缺少字符和 space 个字符看起来是一样的,但是 check50 可以分辨出区别。换句话说,删除最后一个打印行。
此外,也许您复制并粘贴到这里是错误的,但是白色 space 在 python 中很重要,而在 C 中则没有。这意味着您必须缩进您所包含的行在 if 块中。