提问人:Despaxir 提问时间:9/20/2023 更新时间:9/20/2023 访问量:91
1.-np.arange() 在 numpy 中是什么意思?
What does the 1.-np.arange() mean in numpy?
问:
我有以下代码行作为我的 python 课程中示例的一部分提供给我
np.sqrt(1.-np.arange(0,1.01,0.01)**2)
但尚未给出任何解释。我对 1.-np.arange() 是什么意思感到困惑?所以在此之前,我不知道你可以做 1.然后在它旁边有函数 np.arange(),更不用说在函数之前和浮点 1 之后有一个负号了。
这行代码是如何工作的?此外,您能否给我一些我可以做到这一点的其他函数的示例,或者您能否为我指出正确的方向,以便我可以在哪里了解更多信息(以便我可以在其他场景中与其他函数一起使用它)?
我去了numpy.arange()的文档,但没有找到任何东西。我将以下代码行放入 Jupyter 笔记本中,发现它返回了一个包含一些负数的数组,前两个数字分别是 1 和 0。我以为它不会起作用,因为我以前没有遇到过它。事实上,我以为这是我得到的笔记中的错别字,但似乎不是。
打印(1.-np.arange(0,100,1))
答:
您只需要单独分解这些术语并理解它们,但在这样做之前,您需要记住,您可以在两个方向上使用 +/- 从 numpy 数组中添加/减去标量。 所以现在 np.arange(0, 1.01, 0.01) 它从 [0, 1] 返回一个步长为 0.01 的数组,所以大约 101 个元素,我们称之为 A。 然后 A**2 对 A 应用平方元素,因此所有元素都将乘以自身,我们称之为 B。 然后从 1.0 或 1 中减去 B。由 1.- B,这意味着如果你在 B 中有零,它将变为 1(请注意,小于 1 的平方元素会使它们比以前小,这意味着所有值仍然是正数),我们称之为 C。 最后,您将 sqrt 应用于 C,它都是正值,然后得到结果。
result = np.sqrt(1.-np.arange(0,1.01,0.01)**2)
# OR
A = np.arange(0, 1.01, 0.01)
B = A**2
C = 1.0 - B
result = np.sqrt(C)
评论
numpy.arange
arange
返回一个 numpy 数组。numpy 数组与算术运算符和数字组合在一起,返回一个新数组,其中包含原始数组中每个数字的算术运算结果。无论顺序是数组、运算符、数字还是数字、运算符、数组,这都有效。np.arange(4)
1
1.