Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/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 csv库写入点而不是实际数组_Python_Python 3.x - Fatal编程技术网

Python csv库写入点而不是实际数组

Python csv库写入点而不是实际数组,python,python-3.x,Python,Python 3.x,我想在csv文件中写3列。一个带数字,一个带目的(培训/测试),第三个带numpy数组 我试过这个密码 打开('resources/new_file.csv','w',newline='')作为csvfile: 行_writer=csv.writer(csvfile,分隔符=',') 对于i,枚举中的行(数据): image=np.fromstring(行,dtype='uint8',sep='') 图像=np.重塑(图像,(48,48)) x_列[i]=图像 img=图像 face_casca

我想在csv文件中写3列。一个带数字,一个带目的(培训/测试),第三个带
numpy
数组

我试过这个密码

打开('resources/new_file.csv','w',newline='')作为csvfile:
行_writer=csv.writer(csvfile,分隔符=',')
对于i,枚举中的行(数据):
image=np.fromstring(行,dtype='uint8',sep='')
图像=np.重塑(图像,(48,48))
x_列[i]=图像
img=图像
face_cascade=cv2.CascadeClassifier('haarcascade_frontalface_default.xml'))
面=面\级联。检测多尺度(img,1.1,2)
对于面中的(x,y,w,h):
new_img=cv2.resize(img[y:y+h,x:x+w],dsize=(48,48),插值=cv2.INTER_CUBIC)
image\u str=new\u img.flatte()
row\u writer.writerow([情感[i],目的[i],形象]
csvfile.close()
但在打开csv文件后,每一行都是这样的(与
)完全相同)

还要注意,在一些数字之间,有一个双空格

我怎么能把整件事写成这样呢

3,Training,49 72 85 12 0 [here every other number from array] 192 188 185

要获取数组中的每个数字,可以尝试设置

import sys
import numpy
numpy.set_printoptions(threshold=sys.maxsize)

我认为双空格是因为要计算数组中也存在的3位数字,因为您使用了flatten。如果未使用展平,则以截断形式显示,并带有空格以说明可读性。

image\u str=new\u img.flatte()
之后,请添加
print(image\u str)
;这给了您什么?
“”.join(map(str,image_str))
?是的,因为
image_str
是一个
numpy.ndarray
,然后您只需编写array@wwii就这样。如果你把你的评论作为一个答案,我可以把它作为一个解决方案。
import sys
import numpy
numpy.set_printoptions(threshold=sys.maxsize)