gpt4 book ai didi

python - 为什么没有定义排列?

转载 作者:太空宇宙 更新时间:2023-11-03 12:18:53 25 4
gpt4 key购买 nike

我没有编程经验,正在学习 Python 类(class)。我现在正在经历条件判断,遇到了一个我不了解其原因的问题。

我基本上只是想让某人在 x 的所需间隔内绘制 x^2,但限制 x 不是负数。如果用户输入否定输入,他们将收到一条消息,说明不允许。否则,应绘制 x vs. x^2。

N = input('Enter upper limit of x:');
if N < 0:
print "Negative input isn't allowed."
else:
x = arange(N)
y = x*x
plot(x,y)

上面给出了错误:

NameError: name 'arange' is not defined 

我不明白,因为 arange() 通常是根据我(很少)的理解来定义的。

最佳答案

Python 有很多内置命令。但是,arangeplot 不是其中的一部分。这些由 numpymatplotlib 提供。

要使您的代码正常工作,您可以添加:

from numpy import *
from matplotlib import *

在代码的顶部。但这不是推荐的方式。最好这样做:

import numpy
import matplotlib

然后当你调用它们的函数时

x=numpy.arange(N)

matplotlib.plot(x,y)

推荐这样做的原因是有时您可能有其他模块具有相同的函数名称。

一个(非常)稍微高级一点的更好的版本是这样的:

import numpy as np
import matplotlib.pyplot as plt
x=np.arange(N)
plt.plot(x,y)

npnumpy 的标准缩写,pltmatplotlib.pyplot 的标准缩写(其中是实际定义命令 plot 的地方)。这些是标准缩写,仅导入 matplotlib 的一部分有利于减少开销。

您应该了解什么是 numpy 数组与普通的 python 列表。

关于python - 为什么没有定义排列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28256737/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com