Python 到 C# 多维数组

Python to C# multidimensional array

我需要将这段代码从 python 翻译成 c#:

def _get_w_matrix(quaternions):
    w_matrix = [[[q[3], q[2], -q[1], q[0]],
                 [-q[2], q[3] , q[0], q[1]],
                 [q[1], -q[0], q[3], q[2]],
                 [-q[0], -q[1], -q[2], q[3]]] for q in quaternions] 

其中 四元数 类似于

[[0. 0. 0. 0.]
 [0. 2. 2. 0.]
 [2. 3. 1. 0.]]

我不明白返回的是什么类型的对象,怎么写。

编辑: 我在 .NET 中使用 Numpy,所以在我的 C# 代码中变量四元数是 NDarray 类型。

Python type() 函数与 print() 函数相结合,这两个函数可用于调试 w_matrix list.[=15= 的外观和类型]

我写这段代码是为了调试目的:

def _get_w_matrix(quaternions):
    w_matrix = [[[q[3], q[2], -q[1], q[0]],
                 [-q[2], q[3] , q[0], q[1]],
                 [q[1], -q[0], q[3], q[2]],
                 [-q[0], -q[1], -q[2], q[3]]] for q in quaternions] 
    return w_matrix

inputMatrix = [[0,0,0,0],
 [0,2,2,0],
 [2,3,1,0]]

test = _get_w_matrix(inputMatrix)

print("matrix created by function: ")
print(test)
print("type of matrix:")
print(type(test))

哪个returns:

matrix created by function: 
[[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]], [[0, 2, -2, 0], [-2, 0, 0, 2], [2, 0, 0, 2], [0, -2, -2, 0]], [[0, 1, -3, 2], [-1, 0, 2, 3], [3, -2, 0, 1], [-2, -3, -1, 0]]]
type of matrix:
<class 'list'>

类型是 python list of list of list with integers。我不是 c# 方面的专家,但这应该对应于 List>>