Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将numpy数组转换为字符串_Python_Arrays_Python 3.x_Numpy_Opencv - Fatal编程技术网

Python 将numpy数组转换为字符串

Python 将numpy数组转换为字符串,python,arrays,python-3.x,numpy,opencv,Python,Arrays,Python 3.x,Numpy,Opencv,我有一个numpy数组。 print(numpy\u数组[1])给出了['path/to/file.jpg'] 我想使用cv.imread(numpy\u array[1]),但当我这样做时,我会得到错误: Can't convert object of type 'numpy.ndarray' to 'str' for 'filename' ['path/to/file.jpg']是一个列表。您需要的可能是'path/to/file.jpg',这是此列表的第一个元素:['path/to/f

我有一个numpy数组。
print(numpy\u数组[1])
给出了
['path/to/file.jpg']

我想使用
cv.imread(numpy\u array[1])
,但当我这样做时,我会得到错误:

 Can't convert object of type 'numpy.ndarray' to 'str' for 'filename'

['path/to/file.jpg']
是一个列表。您需要的可能是
'path/to/file.jpg'
,这是此列表的第一个元素:
['path/to/file.jpg'][0]

对于CV调用,请尝试
CV.imread(numpy\u数组[1][0])


或者,正如nagyl所建议的,您可以展平阵列。这里有一个例子

>>> a = np.array([["path"],["file"]])
>>> a.flatten()
array(['path', 'file'], dtype='<U4')
>>a=np.array([[“路径”],[“文件”]]
>>>a.展平()

数组(['path',file'],dtype='您有一个2D列表,这意味着numpy_数组[1]不是一个字符串而是一个列表,在该列表中有一个字符串,所以使用numpy_数组[1,0]获取其中的字符串,或者使用numpy.squence(numpy_数组)删除额外的维度,然后使用numpy_数组[1]就可以了

cv.imread(numpy_array[1, 0])


['path/to/file.jpg']
不是另一个列表吗?如果是的话,也可以尝试索引它。numpy_数组=['path/to/file.jpg']['path/to/file2.jpg']['path/to/file3.jpg']]在这种情况下,你也需要进入内塞德列表。使用
cv.imread(numpy_数组[1][0])
或不使用嵌套lists@Gedaz然后是一个数组数组。通过执行
numpy\u数组=['path/to/file.jpg','path/to/file2.jpg','path/to/file3.jpg']
或索引
numpy\u数组[1][0]将它们更改为字符串。我建议做第一个,不需要额外的数组,因此使你的简单代码更复杂。下一次请张贴你的全部代码。不需要额外的列表。至少,请考虑建议将嵌套列表更改成平移列表。
numpy_array = numpy.squeeze(numpy_array)
cv.imread(numpy_array[1])