你好,我在创建这个循环时遇到了麻烦,在我声明了“nameone”变量之后,我想让它返回到输入“*”或者一个名称,我试着将循环放在输入之前,但是它会出现错误“在赋值之前引用”,我明白这是为什么,但是我想不出一个方法来创建它它将允许您输入新名称
def GetPosInt():
nameone = str(input("Please enter a student name or '*' to finish: "))
while nameone != "*":
scoreone = int(input("Please enter a score for " + nameone +": "))
if scoreone < 0:
print("positive integers please!")
break
else:
scoretwo = float(input("Please enter another score for "+nameone+": "))
scorethree = float(input("Please enter another score for "+nameone+": "))
testscores = scoreone + scoretwo + scorethree
avg = testscores / 3
print("The average score for",nameone,"is ",avg)
if nameone == "*":
print("no bueno")
def main():
GetPosInt()
如果我对你问题的理解是正确的,那么你需要的是一个外环。你知道吗
比如:
代码示例为:
这是因为,您可能会将条件指定为
while nameone != '*':
,但在进入循环之前不会声明nameone
。你可以很容易地解决这个问题。试试这个:相关问题 更多 >
编程相关推荐