IronPython中二维类型化数组的内联初始化

IronPython中二维类型化数组的内联初始化,python,ironpython,Python,Ironpython,我有一个关于IronPython中类型化数组初始化的问题。我想在IronPython中初始化内联类型的二维数组。 在IronPython中,我发现了如何初始化简单类型数组: pythonTypedArray = Array[int]([0, 1, 2, 3, 4]) 以及如何初始化数组的类型化数组: pythonTypedArrayOfArrays = Array[Array[int]]([Array[int]([0, 1]), Array[int]([2, 3])]) 例如,在C#中,我可

我有一个关于IronPython中类型化数组初始化的问题。我想在IronPython中初始化内联类型的二维数组。
在IronPython中,我发现了如何初始化简单类型数组:

pythonTypedArray = Array[int]([0, 1, 2, 3, 4])
以及如何初始化数组的类型化数组:

pythonTypedArrayOfArrays = Array[Array[int]]([Array[int]([0, 1]), Array[int]([2, 3])])
例如,在C#中,我可以这样做:

int[,] twoDimensionalArray = new int[,] { {0, 1, 2, 3, 4}, {5, 6, 7, 8, 9} };

我可以在IronPython中初始化内联二维类型数组吗?如果否,在IronPython中初始化二维类型化数组的最佳方法是什么

所以,你需要一个矩阵。在Python中,可以通过执行以下操作来实现:

matrix = [[0 for x in range(w)] for y in range(h)] 
或者使用(您可以通过运行
pip install numpy
来安装它):

在numpy中,使用随机数生成矩阵非常简单:

>>> import numpy as np
>>> np.random.rand(2,3)
array([[ 0.22568268,  0.0053246 ,  0.41282024],
       [ 0.68824936,  0.68086462,  0.6854153 ]])
在我看来,每当你想要矩阵的时候,你都想使用
numpy
,因为它有一些很好的方法,可以真正帮助你处理它们


//编辑:由于添加了更多上下文,在IronPython中,您可以通过以下操作创建数组数组:

array = Array[Array[int]]( ( (1,2), (3,4) ) )
或者您可以创建多维数组,即使用
Array.CreateInstance
传递类型作为第一个参数,后跟维度大小:

array = Array.CreateInstance(int, 2, 3)

需要更多信息时,您可以随时阅读

使用
numpy
您确定这是Python吗?看起来不像…我很抱歉没有提到这一点。这个问题与我可以使用.NET类型的IronPython有关。@Bill:请回答你的问题。@Bill你应该这样标记它。numpy来自哪里?为它添加了一些参考资料;P@MrGrj如果我使用Array.CreateInstance方法,那么如何用值填充此数组?是的。只有这种方法?@MrGrj,那么
array=array.CreateInstance(int,2,3)
variant的内联初始化呢?你能提供一些关于如何安装numpy的信息吗?我尝试了这个链接中的说明,但它不起作用(无法下载ironpkg-1.0.0.py文件):这很棘手。改用科学python。就像Anaconda、WinPython一样,只需谷歌一下。他们预装了numpy之类的东西。
import numpy
a = numpy.arange(12)
a.shape = 3,  4
print(a)
>>>
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]
import numpy
a = numpy.arange(12)
a.shape = 3,  4
print(a)
>>>
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]