阵列功率迭代

时间:2015-04-27 09:59:52

标签: python arrays loops

我需要从向量x创建几个数组。向量中的每个元素都需要是幂0,1,2,...,n。具有3个元素的数组应该产生3个数组,功率为0,1,2。

x=numpy.array([1,2,3])
n=len(x)
for i in range(n):
    print(x**i)

收率:

[1 1 1]
[1 2 3]
[1 4 9]

当我想要:

array([1, 1, 1]),
array([1, 2, 3]),
array([1, 4, 9])

4 个答案:

答案 0 :(得分:0)

据我了解你的问题,你想要一个包含所有凸起的numpy数组的2D numpy数组:

import numpy
x=numpy.array([1,2,3])
print numpy.array([x**i for i in range(len(x))])

答案 1 :(得分:0)

我自己解决了。我尝试过类似的东西,但可能并不完全。这解决了我的问题

\Session::has('session_Acc')

答案 2 :(得分:0)

我希望以下内容对您有用

x = np.arange(5)    
powr = [1,2,3]    
np.array([x**i for i in powr])

array([[ 0,  1,  2,  3,  4],
       [ 0,  1,  4,  9, 16],
       [ 0,  1,  8, 27, 64]])

答案 3 :(得分:0)

您打印的 numpy数组,只是print使用从str内置函数返回的字符串表示形式。你想要的是repr内置函数返回的字符串(有关所涉问题的详细讨论,请参阅Difference between str and repr in Python。)

尝试此代码并了解相似之处和不同之处

import numpy

x=numpy.array([1,2,3])
n=len(x)
for i in range(n):
    print(x**i)
    print(str(x**i))
    print(repr(x**i))