Python 列表格式的numpy数组

Python 列表格式的numpy数组,python,arrays,list,numpy,Python,Arrays,List,Numpy,如何格式化表单的numpy数组 data1 = np.array([[0,0,0],[0,1,1],[1,0,1],[1,1,0]]) 要以这种格式创建列表,请执行以下操作: data = [ [[0,0], [0]], [[0,1], [1]], [[1,0], [1]], [[1,1], [0]] ] 我试着用两个for循环 for i in range(len(data)): for j in range(3):

如何格式化表单的numpy数组

data1 = np.array([[0,0,0],[0,1,1],[1,0,1],[1,1,0]])
要以这种格式创建列表,请执行以下操作:

data = [
       [[0,0], [0]],
       [[0,1], [1]],
       [[1,0], [1]],
       [[1,1], [0]]
    ] 
我试着用两个for循环

for i in range(len(data)):
    for j in range(3):
       if j == 2:
            va[i] = data1[i][j]
       else:            
            sa[i] = data1[i][j]

但这给了我一个索引越界错误。我想了解一些关于如何使用列表理解和切片的想法:

>>> data1 = np.array([[0,0,0],[0,1,1],[1,0,1],[1,1,0]])
>>> print [[x[:2].tolist(), x[2:].tolist()] for x in data1]
[[[0, 0], [0]],
 [[0, 1], [1]],
 [[1, 0], [1]],
 [[1, 1], [0]]]

哇,非常感谢您的及时回复。这正是我所需要的
va
sa
初始化为@hpaulj
va=[]
sa=[]
但谢谢。我的问题有了答案