python - 获取数学函数作为用户输入

标签 python python-3.x function input

我需要知道如何将字符串输入转换为可执行函数。 例如 - 用户写入字符串 'x*Sin(x**2)' 然后程序将其作为函数,可以计算给定 x 的值,可以绘制此函数的推导等。我读过有一个名为的模块scitools.stringfunction,但据我所知,此模块在 python-3 中不可调用。

有什么制作方法吗?

最佳答案

对于 Python 2.X

f = lambda x: input() # the user inputs: x**2 + 1
y = f(3)
print y # outputs: 10

对于 Python 3.X

f = lambda x: eval(input())
y = f(5)
print y

只需确保导入所需的数学函数。并确保用户输入有效的 Python 算术表达式。

关于python - 获取数学函数作为用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43695459/

相关文章:

c - 将多个值从一个函数返回到另一函数

c# - 从函数调用按钮 OnClick

python - 使用 python 将 utf-16 编码的 rss 流存储到 sqlite3 中的正确过程是什么

python - 在Django中,如何实现一个事务的可重复读?

python - 如何更改 python 中的错误消息?

python - 带有某些字符串的嵌套循环如何在 python 中工作?

python-3.x - 属性错误: 'list' object has no attribute 'create_png'

javascript - 提高函数速度

python - 如何在 matplotlib 中注释 x 轴的范围?

python - 是否有 Django 应用程序可以让我轻松地从 Facebook、Twitter 和 Gmail 导入和邀请 friend ?