需要将字符串转换为二维数组

need to convert a string to 2d array

我需要转换在 python 程序中作为命令行参数传递的以下字符串

'[[0,1,0],[1,1,1],[0,1,0]]'. Numpy 有一些可能对我的问题有用的东西,但是,它只适用于在字符串中找到的一维数组。 ,

https://docs.scipy.org/doc/numpy/reference/generated/numpy.fromstring.html

有哪些选项可以解决我的问题?

我找到了一种方法来解决您的问题。 您可以替换字符串并删除“[”或“]”。然后你可以转换为一维数组,最后整形为二维数组。

代码:

import numpy as np

string=string.replace('[','')
string=string.replace(']','')

array1d=np.fromstring(string,dtype=int,sep=',')
array2d=np.reshape(array1d, (-1, 3))

希望对您有所帮助。祝你有美好的一天!