numpy中的1.-np.arange()是什么意思?

brgchamk  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(134)

下面这行代码是我在python课程中的一个示例的一部分
np.sqrt(1.-np.arange(0,1.01,0.01)**2)
但没有给出任何解释。我不明白1.-np.arange()是什么意思。所以在此之前我不知道你可以做1。然后在它旁边有函数np.arange(),更不用说在函数之前和float 1之后有一个负号了。
这行代码是如何工作的?此外,您是否可以给予我一些其他函数的例子,我可以这样做,或者您可以指出我在正确的方向,我可以了解更多关于这一点(以便我可以使用它在其他场景与其他功能)?
我查看了numpy.arange()的文档,没有找到任何东西。我把下面这行代码放入了Answeryter notebook,发现它返回了一个由一些负数组成的数组,前两个数字分别是1和0。我希望它不起作用,因为我以前没有遇到过它。事实上,我认为这是一个错字的笔记,我给,但它似乎不是。
print(1.-np.arange(0,100,1))

zu0ti5jz

zu0ti5jz1#

你只需要单独分解这些项并理解它们,但在此之前,你需要记住,你可以在两个方向上使用+/-从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中有0,它将成为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)

相关问题