我想使用np.append追加到numpy数组。python numpy数组附加不能在.py文件中工作,但在终端中工作
例如,
a = np.array([1])
np.append(a, [2])
此代码工作良好终端(结果是阵列([1,2])),但它不会当我执行.py文件包括相同的工作代码包含在其中。当我在追加后打印一个[2]时,它仍然是[1]。
这里是我的test.py文件的代码:
import numpy as np
a = np.array([1])
print(a)
np.append(a, [2])
print(a)
,这是与终端运行它的结果:
python test.py
[1]
[1]
错误的结果,并没有错误。 有谁知道可能是什么问题?
根据[这个问题](http://stackoverflow.com/questions/34597871/numpy-wont-append-arrays)的答案,我发现这是因为我没有使用数组的'复制'。在终端中,使用np.append()直接得到结果,而在.py文件中,在打印a的值之前,np.append()函数似乎将结果扔掉(?)。这是我固定我的代码在test.py,现在它的工作原理: '进口numpy的为NP A = np.array([1]) 打印(一) A = np.append( a,[2]) print(a)' – user3052069
'np.append'是另一种使用'np.concatenate'的方法。它不是,也从来不是一个列表副本的追加。 – hpaulj