2017-08-10 84 views
0

晚上好社区,PYTHON-删除空行包含几个值

我目前正在写一个python脚本,我输出包含多值的变量的变量。变量的名称是'y'(更准确地说:我将y定义为一个数组y = []),它通过一个函数以x,y,z坐标形式填充位置数据。当我打印变量y的数据如下所示:

[[[ 22.67971815 -8.74924581 74.37963044]] 

[[[ 0.80132995 -9.97601029 73.91042767]]] 

[[[-20.7922284 -12.16091024 71.74796926]]] 

我的问题:

有没有办法删除数据行之间的empy行?另外,是否可以删除变量y的括号([[[...]]])

高兴之任何任何的帮助,感谢你在

+2

请问您能提供一个代码示例吗? – Solvalou

回答

0

要删除您可以使用列表list comprehension括号。在你的情况下,我会做如下的事情。

stripped_y = [item.strip("[]") for item in y] 
+0

感谢您的回复。应用你的建议我收到以下错误消息:AttributeError:'numpy.ndarray'对象没有属性'strip'任何想法如何解决这个问题? – Slin

+0

他认为你的y是一个字符串,但正如我们可以看到它是一个numpy数组。因此,知道你是如何创造y来帮助你真的很好。 – Solvalou

+0

openCV函数为我返回y的值:x,y = cv2.aruco.estimatePoseSingleMarkers(bla,20.1,camera_matrix,distortion_coefficients,None,None,并将数据存储在变量中,稍后将变量y打印到表中 t = Texttable() t.add_rows([[“ID”,“tvecs”],[str(markerIDs),str(y)]]) print(str(t.draw())) – Slin