#表头需要什么biaotou=["vin","imei","licenseNum","vehicleModel"]#在哪里搜索多个表格filelocation="C:/Users/caoly/Desktop/yixintoday/"#当前文件夹下搜索的文件名后缀fileform="...
#表头需要什么
biaotou=["vin","imei","licenseNum","vehicleModel"]
#在哪里搜索多个表格
filelocation="C:/Users/caoly/Desktop/yixintoday/"
#当前文件夹下搜索的文件名后缀
fileform="csv"
#将合并后的表格存放到的位置
filedestination="C:/Users/caoly/Desktop/yixintoday/"
#合并后的表格命名为
file="jiehe"
#首先查找默认文件夹下有多少文档需要整合
import glob
from numpy import *
filearray=[]
for filename in glob.glob(filelocation+"*."+fileform):
filearray.append(filename)
#以上是从yixintoday文件夹下所有ecxel表格,并将所有的名字存储到列表filearray
print("在默认文件夹下有%d个文档"%len(filearray))
ge=len(filearray)
matrix = [None]*ge
#实现读写数据
#下面是将所有文件读数据到三维列表cell[][][]中,不包含表头
import xlrd
for i in range(ge):
fname=filearray[i]
bk=xlrd.open_workbook(fname)
try:
sh = bk.sheet_by_name("CarDetail")
except:
print ("在文件%s中没有找到CarDetail,读取文件数据失败,要不你换换表格的名字?"%fname)
nrows =sh.nrows
matrix[i] = [0]*(nrows -1)
ncols =sh.ncols
for m in range(nrows -1):
matrix [i][m] =["0"]*ncols
for j in range(1,nrows):
for k in range(0,ncols):
matrix [i][j-1][k]=sh.cell(j,k).value
#下面是写数据到新的表格jiehe.xls中
import xlwt
filename =xlwt.Workbook()
sheet = filename.add_sheet("hel")
#下面是把表头写上
for i in range (0,len(biaotou)):
sheet.write (0,i,biaotou[i])
#求和前面 的文件一共写了多少行
zh=1
for i in range (ge):
for j in range(len(matrix[i])):
for k in range(len(matrix[i][j])):
sheet.write(zh,k,matrix[i][j][k])
zh =zh+1
print ("我已经将%d个文件合并成1个文件,并合名为%s.xls,快打开看看正确吗?"%(ge,file))
filename.save(filedestination+file+".xls")
报错:
Traceback (most recent call last):
File "D:/python/yixin/DataDailyReport/jiehe.py", line 26, in
bk=xlrd.open_workbook(fname)
File "C:\ProgramData\Anaconda3\lib\site-packages\xlrd\__init__.py", line 162, in open_workbook
ragged_rows=ragged_rows,
File "C:\ProgramData\Anaconda3\lib\site-packages\xlrd\book.py", line 91, in open_workbook_xls
biff_version = bk.getbof(XL_WORKBOOK_GLOBALS)
File "C:\ProgramData\Anaconda3\lib\site-packages\xlrd\book.py", line 1271, in getbof
bof_error('Expected BOF record; found %r' % self.mem[savpos:savpos+8])
File "C:\ProgramData\Anaconda3\lib\site-packages\xlrd\book.py", line 1265, in bof_error
raise XLRDError('Unsupported format, or corrupt file: ' + msg)
xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; found b'licenseN'
Process finished with exit code 1
展开