如何将2d列表转换为2d本机python数组而不是numpy数组?

时间:2018-09-01 04:48:42

标签: python arrays python-3.x list numpy

我想转换python 2d列表,

[[1,2,3],[4,5,6]]  

python3 array.array类型,

[ [1 2 3]

[4 5 6] ]

最重要的挑战是我不会导入numpy。 所以我不能使用np.asarray()

我还使用了array.fromlist()array.extend()。 两种方法都创建一个单维数组。 但是我想将多维列表转换为多维数组。 有什么办法吗?

1 个答案:

答案 0 :(得分:3)

您要的内容是不可能的。来自the array docs

  

此模块定义了一个对象类型,该对象类型可以紧凑地表示一个基本值数组:字符,整数,浮点数...该类型是在对象创建时通过使用类型代码指定的。

仅受支持的类型如下(注意缺少list):

Type code            C Type        Python Type
    'b'         signed char                int
    'B'       unsigned char                int
    'u'          Py_UNICODE  Unicode character
    'h'        signed short                int
    'H'      unsigned short                int
    'i'          signed int                int
    'I'        unsigned int                int
    'l'         signed long                int
    'L'       unsigned long                int
    'q'    signed long long                int
    'Q'  unsigned long long                int
    'f'               float              float
    'd'              double              float 

似乎您可能将array模块与numpy数组的本机实现混淆了。 情况并非如此