def save2csv(file_name=None, header=None, data=None):
"""
保存成CSV格式文件,方便Excel直接打開
:param file_name: 保存的文件名
:param header: 表頭,每一列的名字
:param data: 具體填充數據
:return:
"""
if file_name is None or isinstance(file_name, basestring) is False:
raise Exception('保存CSV文件名不能為空,并且必須為字符串類型')
if file_name.endswith('.csv') is False:
file_name += '.csv'
with open(file_name,'w') as file_obj:
# file_obj = open(file_name, 'wb')
file_obj.write(codecs.BOM_UTF8) # 防止亂碼
writer = csv.writer(file_obj,dialect='excel')
writer.writerow(data)
if data is None or isinstance(data, (tuple, list)) is False:
raise Exception('保存CSV文件失敗,數據為空或者不是數據類型')
if header is not None and isinstance(header, (tuple, list)) is True:
writer.writerow(header)
def main():
a = list([path for path in glob.glob('F:/image/front/*.jpg')])
for b in a:
img,landmarks = read_im_and_landmarks(b)
c = getdis(landmarks)
save2csv(file_name='face',data=c)
if __name__ == '__main__':
main()
說明一下,主要是想將getdis()方法返回的值存在face一個表中的不同行,現在是一直覆蓋存儲,只存在了第一行。
沒有將read_im_and_landmarks(),getdis()復制進來,怎么改?謝謝大家