我试图在Python 3.6中使用matplotlib显示一个带有用户公式的图形,但我遇到了一些问题。
import numpy as np
import matplotlib.pyplot as plt
def graph(x_range):
x = np.array(x_range)
y = 2*x
plt.plot(x, y)
plt.show()
graph(range(-10, 11))
它工作正常,但是如果我尝试用y = input()
替换y = 2*x
,并尝试在终端中输入2*x
,我会得到一个错误,声明为ValueError: Illegal format string "2*x"; two marker symbols
有什么想法来解决这个错误,或者有没有更好的方法来绘制用户给出的方程?
谢谢
2条答案
按热度按时间voj3qocg1#
将
y=2*x
替换为这是一个非常肮脏的捷径。
jaql4c8m2#
如果你正在寻找一个“适合你的情况”的轻量级方法,并且不计算“所有的数学表达式”,那么白名单方法可能会很好地为你服务