csv 文件格式的本质是一种以文本存储的表格数据(使用 Excel 工具即可读写 csv 文件)。csv 文件的每行代表一行数据,每行数据中每个单元格内的数据以逗号隔开。
按行写入csv文件,话不多说直接上代码
import csv
def save_csv(result):
with open('predict.csv', mode='w', newline='') as predict_file:
csv_writer = csv.writer(predict_file)
for row in range(len(result)):
csv_writer.writerow(result[row])
data_numpy = [[2,3],[1,1]]
save_csv(data_numpy)
生成文件在相对路径文件夹下。结果如下图所示
读取csv文件并保存成list,predict.cvs内容接上data_numpy
def load_csv(file):
data_list = []
with open(file) as f:
f_reader = csv.reader(f) #此时的f_reader是一个迭代器,可用next()方法调用,示例在下面
for row in f_reader: #循环文件中的每一行
data_list.append(row)
print(data_list)
load_csv('./predict.csv')
输出:
[['-1.0', '1.0']]
[['-1.0', '1.0'], ['1', '1']]
此时的f_reader是一个迭代器,可用next()方法调用,可用于获取文件表头,示例如下:
def load_csv(file):
data_list = []
with open(file) as f:
f_reader = csv.reader(f) #此时的f_reader是一个迭代器,可用next()方法调用
header_row = next(f_reader)
print('header_row',header_row)
for row in f_reader: #循环文件中的每一行
data_list.append(row)
print(data_list)
load_csv('./predict.csv')
输出:
header_row ['-1.0', '1.0']
[['1', '1']]