Python3,eval()的最佳替代品?(作为表达式输入)



我正在使用Python 3。

如何在不使用eval(input("Input: "))的情况下输入表达式?

我需要 eval 来计算代数计算器。

根据表达式的复杂程度,ast.literal_eval可能是更安全的选择。

如果您是唯一使用该应用程序的人,因此无需担心安全问题,请继续使用 eval()exec() .

否则,只需使用安全库来完成您需要的特定任务。 例如,我猜是计算器。

如何在不使用 eval(input("Input: ")) 的情况下输入表达式

干脆不要用eval.在Python 3.x中,inputraw_input的替代品,所以你不需要eval。您可以简单地将语句写为input("Input: ").

此外,在Python 2.X中,您应该使用raw_input("Input: ")而不是eval(input("Input: "))

最新更新