【发布时间】:2014-04-01 00:35:24
【问题描述】:
我对我制作的 python 计算器有这个问题。我是python的新手,所以请不要对我太挑剔。我这样做是为了在输入如下等式时不会崩溃:8*d、8/0、dajf。但是,当用户输入如下内容时:/7、*e 或 *6。它崩溃了。当输入这样的无效方程式时,如何防止它崩溃?比方说,它只会以“警告:无效方程式”响应
我当前的代码:
valid_chars = "0123456789-+/* \n";
while True:
x = "x="
y = input(" >> ")
x += y
if any(c not in valid_chars for c in y):
print("WARNING: Invalid Equation")
continue
try:
exec(x)
except ZeroDivisionError:
print ("WARNING: Invalid Equation")
else:
print(x)
提前致谢!
【问题讨论】:
标签: python input calculator