尽管满足条件(即,字符串值符合预期),但未调用函数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了尽管满足条件(即,字符串值符合预期),但未调用函数相关的知识,希望对你有一定的参考价值。
Python的新手,只是自学并试图建立一个有用的函数库和调用它们的方法。
我将其用作一种“ if x =” n“ goto:y”替换形式,以便不断循环问题,直到输入了可用的答案为止。
由于某种原因,它只会循环一次,如果仍然得到一个无法使用的答案,尽管“ error_c”字符串等于“ y”,它也会报告错误并退出。
下面的相关代码块;请在明信片上回答
#defies strings for error checking
error_c=""
x=""
y=""
z=""
def ages():
age_str = input("How old are you and your two siblings?: ")
error_c="n" #Establishing/re-establishing the error check string
tokens = age_str.split()
try:
x = int(tokens[0])
y = int(tokens[1])
z = int(tokens[2])
except IndexError: #various error checks
error_c="y"
x, y, z = "", "", ""
print("You must enter 3 values")
except NameError:
error_c="y"
x, y, z = "", "", ""
print("You must enter 3 values")
except ValueError:
error_c="y"
x, y, z = "", "", ""
print("Invalid integer format")
return (x, y, z, error_c)
x, y, z, error_c = ages()
if error_c == "n": #only printing if error checks haven't retunred a positive
print (" ")
print ("x = "+str(x))
print (" ")
print ("y = "+str(y))
print (" ")
print ("z = "+str(z))
elif error_c =="y":
x, y, z, error_c = ages()
elif error_c =="":
print ("String values not returned from ages function")
else:
print ("unknown error")
print (error_c) #Checking that the correct value for looping is in play
python的新手,只是自学并试图建立一个有用的函数库和调用它们的方法。我将其用作一种“ if x =“ n” goto:y“替换形式,以保持...
答案
您那里没有任何循环结构。您调用一次ages()
,如果失败,则再次调用它,然后您就没代码了。
另一答案
如果要连续执行ages()直到获得可接受的输入,则可以将代码包装在while循环中,并且仅在满足适当条件时终止。例如:
以上是关于尽管满足条件(即,字符串值符合预期),但未调用函数的主要内容,如果未能解决你的问题,请参考以下文章
Sails js findOne()返回结果,尽管不满足所有条件