我阅读了我能找到的NumPy C API文档,但仍然无法确定是否存在使用C API构建矩阵对象的可能性,而不是二维数组。该函数旨在处理数学矩阵,并且如果用户调用矩阵乘法时忘记将此值从数组转换为矩阵,则不希望出现奇怪的结果(矩阵子类具有乘法和指数运算的唯一区别)。
我阅读了我能找到的NumPy C API文档,但仍然无法确定是否存在使用C API构建矩阵对象的可能性,而不是二维数组。该函数旨在处理数学矩阵,并且如果用户调用矩阵乘法时忘记将此值从数组转换为矩阵,则不希望出现奇怪的结果(矩阵子类具有乘法和指数运算的唯一区别)。
PyObject_Call*
函数调用任何Python可调用对象。PyObject *numpy = PyImport_ImportModule("numpy");
PyObject *numpy_matrix = PyObject_GetAttrString(numpy, "matrix");
PyObject *my_matrix = PyObject_CallFunction(numpy_matrix, "(s)", "0 0; 0 0");
my_matrix
。
编辑:将对numpy.zeros
/numpy.ndarray
的引用更改为对numpy.matrix
的引用。numpy.matrix
但是 zeros
返回的是 ndarray
。 - jfs
numpy.matrix
类吗? - jfs