前面的分享 接口返回值和数据库表里的记录【一】说过,把前端页面显示的所有数据明细导出为CSV文件,将其和数据库表里的数据做校验,这儿说下我对导出的CSV、Excel的处理;
个人博客:https://blog.csdn.net/zyooooxie
对CSV、Excel文件的处理
1.CSV文件
导出按钮:
import csv
def t_1(path):
"""传入CSV文件的路径,返回处理后的明细list"""
with open(path, 'r') as p:
ta = csv.reader(p)
list1 = []
for t in ta:
list1.append(t)
print(list1)
return list1
但是实际会对读取的CSV文件进一步做处理,我的处理如下图:
2.Excel文件
下载按钮:
import xlrd
def t_1b(excel):
"""读取 下载的Excel文件,返回所有数据list"""
ex = xlrd.open_workbook(excel)
tab = ex.sheet_by_index(0)
print(tab.ncols, tab.nrows)
# 三种处理方式,根据需要选择
list_e = []
for i in range(1, tab.nrows):
list_e.append(tab.row_values(i))
print(list_e)
list_e1 = []
for i in range(1, tab.nrows):
ab = tab.row_values(i)
list_e1.append([int(ab[0]), int()]) # 对每个值再做处理
print(list_e1)
list_e2 = []
for d in range(1, tab.nrows):
dict2 = dict()
abc = tab.row_values(d)
dict2['%s' % tab.cell(0, 0).value] = int(abc[0]) # 第一列 id是int
# 看到的是10列
for i in range(1, 10):
dict2['%s' % tab.cell(0, i).value] = abc[i]
list_e2.append(dict2)
print(list_e2)
return list_e2, list_e1, list_e
处理数据库表里的记录
关于数据完整性的测试,我目前的理解就是:数据库表里保存的记录是否能够完整、一致在前端显示;这两期分享的其实就是对数据库查表、接口返回值、导出文件的处理;
交流技术 欢迎+QQ 153132336 zy
个人博客 https://blog.csdn.net/zyooooxie