为什么ı会出现错误?你能帮我修改一下代码吗?
-TypeError:不能将类型为的对象安全地解释为整数。
-TypeError:“float”对象不能解释为整数
import numpy as np
import matplotlib.pyplot as plt
def f(x):
return x**3-2*x
def inputNumber(message):
while True:
try:
userInput =float(input(message))
except ValueError:
print("Enter valid")
continue
else:
return userInput
break
interval1=float(inputNumber("Please write lower bound: "))
interval=float(inputNumber("Please write upper bound: "))
stepsize=float(inputNumber("Enter a step size: "))
x = np.linspace(float(interval1),float(interval),float(stepsize))
y = f(x)发布于 2020-12-07 03:37:03
linspace的前三个参数是开始、结束和要生成的样本数量,而不是步长。试试np.arange(interval1, interval, stepsize)。
或者,您可以使用:num = round((interval-interval1) / stepsize)计算样本的数量,然后将其插入到linspace:np.linspace(interval1, interval, num)中,但我不建议使用它来代替arange。
https://stackoverflow.com/questions/65172221
复制相似问题