【发布时间】:2016-10-31 08:19:20
【问题描述】:
我正在尝试破译一些复杂的代码。下面,我简化了我所理解的代码,以解决我的问题的核心。
scales = (2**arange(8, 12, .25)).astype(int)
在我看来,arange() 创建了一个值数组,范围从 8 到 11,值相隔 0.25。
但是2**arange 做了什么?我知道** 用于求幂,但对我来说可以对数组求幂是没有意义的!当然,对数组中的值取幂是有意义的。但这似乎是一种非常奇怪的语法!
【问题讨论】:
-
从未听说过矢量化操作?如果您有一个数字数组,您可能希望对所有元素执行相同的操作。
some_array + 1如何将1添加到与2**some_array不同的数组的所有元素中,2**some_array将“指数”数组转换为2的结果? -
以前肯定没听说过!但现在我有了,谢谢!
标签: python arrays numpy exponentiation