def diagflat(self, k=0):
if self.ndim!=1: return self.ravel().diagflat(k)
if k!=0: raise NotImplementedError('k!=0 for garray.diagflat')
selfSize = self.size
ret = zeros((selfSize, selfSize))
ret.ravel()[:-1].reshape((selfSize-1, selfSize+1))[:, 0] = self[:-1]
if selfSize!=0: ret.ravel()[-1] = self[-1]
return ret
评论列表
文章目录