Validation Python输入验证循环无限循环

Validation Python输入验证循环无限循环,validation,input,while-loop,infinite-loop,python-3.3,Validation,Input,While Loop,Infinite Loop,Python 3.3,我试图利用TeamTreehouse学习订阅&从编程逻辑和设计书开始,尝试学习编程和python。目前,我正在学习输入验证,这看起来比我想象的要简单得多,它只是为循环/函数添加了一个目的 目标:建立一个程序,通过要求员工输入工作时间和工资率来计算员工的总工资。我已经决定,while循环的代码要比作为if/else循环编写的代码少(虽然这是我目前的观点,但我可以接受更正)。在撰写本文时,除了构建和测试我的第一个输入验证循环之外,我还没有完全构建它 错误:我的工资率while循环从不退出/结束,无论

我试图利用TeamTreehouse学习订阅&从编程逻辑和设计书开始,尝试学习编程和python。目前,我正在学习输入验证,这看起来比我想象的要简单得多,它只是为循环/函数添加了一个目的

目标:建立一个程序,通过要求员工输入工作时间和工资率来计算员工的总工资。我已经决定,while循环的代码要比作为if/else循环编写的代码少(虽然这是我目前的观点,但我可以接受更正)。在撰写本文时,除了构建和测试我的第一个输入验证循环之外,我还没有完全构建它

错误:我的工资率while循环从不退出/结束,无论我输入-10、14或99,我怀疑这与设置它以检查多个条件有关?从我在while循环(下面的url)上找到的交叉参考教程中,我看不到任何“end while”命令,我必须将该命令包装在其中(这本书基于理论/伪代码)然而,我并没有在多个条件下发现太多的物质材料,而循环

While循环教程

Python代码 网址

变量声明///////////
工资率=0
工作小时数=0
#///////////变量声明///////////
#///////////工资率输入验证///////////
def payRate():
工资率=输入(“请输入您的工资率”)
当工资率<浮动(7.50)或工资率>浮动(18.25)时:
#而支付率18.25:
打印(“这是无效的付款率,有效的付款率为$7.50-$18.25。”)
payrate=输入(“请输入有效的payrate。”)
#///////////工资率输入验证///////////
#///////////小时工作输入验证///////////
#工作时数40:
#打印(“这是无效的工作小时数,有效范围为0-40。”)
#int(hoursWorked=输入(“请输入有效工作小时”)
#///////////小时工作输入验证///////////
工资率()
打印(付款率)
打印(工作小时)

payRates
payRates
,您想检查哪一个?
而payRatesfloat(18.25)
您使用的是从未设置过的
payrate
camelCase。您输入的变量是
payrate
lowercase。检查
payrate
方法名称是否使用错误。哦,我的天哪,我的变量输入错误。我将开始声明变量,然后从declar复制粘贴它们我确实遇到了一个新的错误:回溯(最后一次调用):文件“python”,第21行,在文件“python”,第9行,在payRate TypeError:unorderable types:str()#///////////Variable Declarations/////////// payRates=0 hoursWorked=0 #///////////Variable Declarations/////////// #///////////payRates Input Validation/////////// def payRate(): payrate=input("Please enter your payrate.") while payRates < float(7.50) or payRate > float(18.25): # while payRates<7.50:# or payRates>18.25: print("That is an invalid payrate, valid payrates are $7.50-$18.25.") payrate=input("Please enter a valid payrate.") #///////////payRates Input Validation/////////// #///////////hoursWorked Input Validation/////////// #while hoursWorked<0: or hoursWorked>40: # print("That is an invalid amount of hours worked, a valid range is 0-40.") # int(hoursWorked=input("Please enter valid hours worked.") #///////////hoursWorked Input Validation/////////// payRate() print(payRates) print(hoursWorked)