需求:需要按单位处理1500万数据,导出的是csv文件,需要处理成每个2万的excel文件给每个服务单位。
首先,可以使用Split_CSV_File按两万切分每个单位的数据,下载地址:
http://www.pc0359.cn/downinfo/70807.html
其次,将切分完的csv文件批量转换为txt文件
新建txt,输入内容为:
rename *.csv *.txt
将文件格式为.bat,保存。直接点击完成,批量处理。
将批量转换为txt的文件放到一个文件夹下面,将python程序修改为自己的路径。
import os.path
import os
import xlwt
path="E:/testData" #输入路径
pathe="E:/testData"#输出路径
def txt2xls(fp,file):
if os.path.exists(fp):
print ("正在处理",fp)
f=open(fp)
wb=xlwt.Workbook(encoding='utf-8', style_compression=0)
ws1 = wb.add_sheet("Sheet1")
i=0
for line in f.readlines():
j=0
for item in line.split('\t'):
try:
item=item.strip()
except UnicodeDecodeError:
print (i,j,item)
ws1.write(i,j,"NULL")
else:
ws1.write(i,j,item)
j=j+1
i=i+1
f.close()
wb.save(pathe+"/"+str(file[:-4])+'.xls')
def getfiles():
files=os.listdir(path)
for file in files:
fp = path+"/"+file
print(fp)
txt2xls(fp,file)
if __name__=='__main__':
getfiles()
print ("处理完毕,按回车键结束程序。")
即完成需求任务。