我不知道为什么三角形仍然打印,即使我超过了我设置的阈值



所以我基本上已经完成了整个代码,除了一件让我头疼的事,看看(而不是我的屁股(。这里的代码打印出一个三角形*"符号。当然,我给出的命令是,如果数字大于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

* 
* * 
* * * 
* * * * 
* * * * * 
* * * * * * 
* * * * * * * 
* * * * * * * * 
* * * * * * * * * 
* * * * * * * * * * 

相关内容

最新更新