与修改Python列表中元素的值的方法类似,如需修改NumPy数组中元素的值。可以将该元素的索引放到数组名右侧的一对中括号中,然后在等号的右侧输入修改后的值。下面的代码是先创建包含0、1和2三个元素的数组,然后将该数组的第2个元素的值修改为666。
numbers = np.arange(3) numbers[1] = 666
代码的运行结果如下,由于第2个元素是3位数,所以NumPy会自动使用空格将该数组中的其他元素补足到3位。
[ 0 666 2]
注意: 数组中所有元素的数据类型都必须相同,修改元素时,如果为其赋值的数据类型与其他元素的数据类型不同,则将导致错误。
可以一次性修改多个元素的值,此时需要将这些元素的索引添加到一个列表中,然后使用该列表对数组进行索引。下面的代码是将数组中的第1个元素和第3个元素的值分别修改为666和888。也可以使用一个变量引用列表,然后在数组名右侧的中括号中使用变量名代替列表。
numbers = np.arange(3) numbers[[0,2]] = 666,888
修改后的数组如下:
[666 1 888]