if volt.isalpha() or res.isalpha() or amp.isalpha():
我在这里做错了什么?我得到一个无效的SYNTAX,我正在使用它来制作我正在制作的计算器程序。它计算电压,电阻和电流强度。但这就是容易的部分,我只是想让它变得愚蠢。我在代码(伏特,放大器,res)中有3个变量,由用户输入。我只是想确保他们不输入任何愚蠢的东西。像信件一样...
try:
float(volt) >= 0 and float(res) >= 0 and float(amp) >= 0
print("")
print("You put a value for everything. You don't need the calculator.")
allowed = 0
if volt.isalpha() or res.isalpha() or amp.isalpha():
print("You typed in characters for one of the values, this calculator doesn't use letters.")
allowed = 0
def find_voltage(a,b): # V = I * R
voltage = a * b
return(voltage)`
答案 0 :(得分:3)
except
之后你没有try
阻止 - 这是必需的。做类似的事情:
try:
float(volt) >= 0 and float(res) >= 0 and float(amp) >= 0
print("")
print("You put a value for everything. You don't need the calculator.")
allowed = 0
except ValueError:
print("Oops, you messed up.")
此外,该行
float(volt) >= 0 and float(res) >= 0 and float(amp) >= 0
没有做任何事情。您需要将其分配给变量,然后检查变量的结果 - 如果为True,则执行一项操作,如果为False,则执行其他操作。