Python numpy:填充数组的子集

Python numpy:填充数组的子集,python,numpy,Python,Numpy,我有一个尺寸为3x3的numpy数组,即它总共有9个元素。我想设置8个值,位置(2,2)处的值始终为1。我可以按如下方式单独完成: import numpy as np def set(coefs): a = np.zeros(3,3) a[0, 0] = coefs[0] a[0, 1] = coefs[1] a[0, 2] = coefs[2] a[1, 0] = coefs[3] ... a[2, 2] = 1 然而,我想知道是否

我有一个尺寸为3x3的numpy数组,即它总共有9个元素。我想设置8个值,位置(2,2)处的值始终为1。我可以按如下方式单独完成:

import numpy as np
def set(coefs):
    a = np.zeros(3,3)
    a[0, 0] = coefs[0]
    a[0, 1] = coefs[1]
    a[0, 2] = coefs[2]
    a[1, 0] = coefs[3]

    ...
    a[2, 2] = 1
然而,我想知道是否有一种更简洁和通用的方法来填充这8个值

np.array(coefs[:8]+[1]).reshape((3,3))

应该完全按照你的要求去做,对吗?

这就成功了!谢谢我仍然习惯于这些时髦的python地址!Ciao@Luca,这更像是numpy二维寻址,而不是Python寻址本身:-)。无论如何,请确保在经过足够的接受时间后接受此答案(单击A左边的复选框形状的轮廓)(我永远记不起您必须等待多长时间才能接受,具体取决于您的代表:-)。我必须等待10分钟才能接受答案;-)你太快了:)@Luca,scusami,这个社区太棒了,除非我马上回答,否则我永远不会被接受