python 实现批量xls文件转csv文件的方法
作者:浮沙沉海 时间:2023-08-29 10:25:26
引言:以前写的一个批量xls转csv的python简单脚本,用的是python2.7
#coding=utf-8
import os
import time
import logging
import xlrd
import csv
#xls文件存放路径
INPUTPATH= u"D:\\lsssl\\桌面\\xls文件"
#生成的csv文件存放路径
OUTPATH = u"D:\\lsssl\桌面\\csv"
class changeCenter:
def __init__(self):
pass
def getvalue(self,filename):
self.mData = []
xlsfile=xlrd.open_workbook(filename)
table = xlsfile.sheet_by_index(0)#sheet1
rownum = table.nrows #行
colsnum = table.ncols #列
for i in range(0,rownum):
row = []
for j in range(0,colsnum):
value = table.cell_value(i,j)
if not isinstance(value,float):
value = value.encode('gbk')#非数字转一下码
row.append(value)
self.mData.append(tuple(row))
def write(self, path, filename):
if not os.path.exists(path):
os.makedirs(path)
csvfile = file("tmp","wb")
writer = csv.writer(csvfile)
writer.writerows(self.mData)
csvfile.close()
if os.path.exists(os.path.join(path,filename+".old")):
os.remove(os.path.join(path,filename+".old"))
if os.path.exists(os.path.join(path,filename)):
os.rename(os.path.join(path,filename),os.path.join(path,filename+".old"))
os.rename('tmp', os.path.join(path,filename))
logging.info("write file finish")
print "write",filename," finish"
def handleExcel():
files,dirs,root = readFilename(INPUTPATH)
for fi in files:
strstock = os.path.join(INPUTPATH,fi)
if os.path.exists(strstock):
st = changeCenter()
st.getvalue(strstock)
name = fi.replace(".xls","")
st.write(OUTPATH, name+".csv")
else:
print strstock+" don't exist"
#获取某个路径下的所有文件
def readFilename(file_dir):
for root, dirs, files in os.walk(file_dir):
return files,dirs,root
if __name__ == '__main__':
handleExcel()
来源:https://blog.csdn.net/lishenluo/article/details/79244176
标签:python,xls,csv
0
投稿
猜你喜欢
ASP网站Server object error的解决办法
2008-11-07 15:57:00
mybatis分页插件pageHelper详解及简单实例
2024-01-19 17:35:25
asp OpenTextFile文本读取与写入实例代码
2011-04-15 11:00:00
Python环境Pillow( PIL )图像处理工具使用解析
2022-12-08 16:04:48
Python利用Flask-Mail实现发送邮件详解
2023-09-29 03:02:18
Python开发网站目录扫描器的实现
2022-07-09 11:51:02
pytorch实现手写数字图片识别
2021-04-20 12:46:58
浅谈python中真正关闭socket的方法
2023-11-02 15:41:56
如何用mysql自带的定时器定时执行sql(每天0点执行与间隔分/时执行)
2024-01-16 01:58:31
go-cache的基本使用场景示例解析
2023-08-06 00:52:02
VB.NET调用MySQL存储过程并获得返回值的方法
2024-01-12 16:03:45
python数据分析:关键字提取方式
2022-03-08 09:23:37
ES6新语法Object.freeze和Object.seal基本使用
2024-04-10 16:10:04
python 阿里云oss实现直传签名与回调验证的示例方法
2021-12-08 00:30:18
Opencv实现倾斜图片转正示例
2022-05-02 14:28:08
如何利用Python给自己的头像加一个小国旗(小月饼)
2023-09-15 20:47:31
简单了解Javscript中兄弟ifream的方法调用
2024-04-22 22:29:30
成为一个顶级设计师的第一准则
2008-04-18 10:29:00
Python实现清理微信僵尸粉功能示例【基于itchat模块】
2021-10-29 20:45:46
Python访问纯真IP数据库脚本分享
2024-01-25 12:59:50