所以我基本上已经完成了整个代码,除了一件让我头疼的事,看看(而不是我的屁股(。这里的代码打印出一个三角形*"符号。当然,我给出的命令是,如果数字大于20或小于1,则不打印任何内容。该消息提示它是一个";无效输入值";然而三角形仍在被输出。我知道这是一个快速的解决办法,但我找不到。
if rows < 1:
print('Invalid input value. The numbers of rows cannot be less than 1.')
elif rows > 20:
print('Invalid input value. The numbers of the rows cannot be greater than 20.')
for i in range(rows):
for j in range((rows - i) - 1):
print(end=" ")
for j in range(i + 1):
print("*", end=" ")
print()```
您只需在输入超出范围时打印消息。一旦打印出错误消息,您就没有采取任何措施来阻止三角形的打印。
你可能是指(使用else: do the rest
(
if rows < 1:
print('Invalid input value. The numbers of rows cannot be less than 1.')
elif rows > 20:
print('Invalid input value. The numbers of the rows cannot be greater than 20.')
else:
for i in range(rows):
for j in range((rows - i) - 1):
print(end=" ")
for j in range(i + 1):
print("*", end=" ")
print()
行的结果=10
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
* * * * * * * * * *