在 python 中复制 numpy 数组后加法不起作用

Addition doesn't work after copying a numpy array in python

我正在尝试复制一个 numpy 数组并更改复制数组的值。

当我使用 np.array 创建 x 数组时,加法不起作用,它会打印 2.00。

import numpy as np
import copy

x = np.array([2,3,4])
inc= np.array([0.2,0.3,0.4])
    
x_copy = copy.copy(x)
x_copy[0] = x_copy[0] + inc[0]

print("x_copy %.2f" % x_copy[0])

但是当我在没有 np.array 的情况下创建 x 时,它可以工作并打印 2.20.

import numpy as np
import copy

x = [2,3,4]       
inc= np.array([0.2,0.3,0.4])    

x_copy = copy.copy(x)
x_copy[0] = x_copy[0] + inc[0]

print("x_copy %.2f" % x_copy[0])

我也尝试使用 x.copy() 复制 x,但没有任何区别。

您可以通过两种方式完成:

任一

x =np.array([2.0,3.0,4.0])

x = np.array([2,3,4])
x = x.astype(float)