对于“是否继续”问题,首先输入“否”时,while循环将正确停止。如果在“是”之后或几个“是”条目之后输入“否”,则用户必须回答“否”,因为前面有多少个“是”条目:例如,“是”、“是”、“否”将在第一个“否”答案之后产生两个“是否要继续”问题。你知道吗
我刚刚开始学习Python,所以任何建议都会很有帮助。你知道吗
谢谢你。你知道吗
def testing3():
def Grade(score):
if score >= 90:
letter = "A"
elif score >= 80:
letter = "B"
elif score >= 70:
letter = "C"
elif score >= 60:
letter = "D"
else:
letter = "F"
print(letter)
def main():
x = input("Enter Numerical Grade: ")
numGrade = int(x)
Grade(numGrade)
main()
def main2():
while True:
test = input("Would you like to continue?: ")
if test == 'Yes':
testing3()
else:
print("Done")
break
main2()
testing3()
testing3调用调用内部main2 def,但是main2调用testing3 def,因此您在两者之间进行乒乓。你知道吗
要了解这一点,您应该查看堆栈帧,您应该看到一个用于testing3的帧,然后是testing2,然后是testing3,等等您输入yes的次数。你知道吗
不管你是否有意(我想你没有)你创建了一个递归函数。因此,您必须多次输入no的原因是当您展开时(从堆栈中弹出帧)
while循环的正确使用应该类似于:
在这里,完成是一个信号旗,你必须在每个回合结束时评估。第一次设置为False,因此not False==True,因此进入循环。你知道吗
另一个提示:像这样只使用一个main
每个Python脚本都有一个名称特殊变量,该变量保存模块的名称,除了用于指定给Python执行的脚本,该脚本接收特殊值main。你知道吗
相关问题 更多 >
编程相关推荐